Una presentazione PowerPoint può memorizzare molto più di quanto mostrino le sue diapositive. Master e layout inutilizzati, font incorporati completi e parti nascoste di immagini ritagliate occupano tutto lo spazio.

Puliamo una presentazione di esempio passo dopo passo, quindi eseguiamo lo stesso lavoro con Compress.CompressPresentation, introdotto in Aspose.Slides for .NET 26.11.

Incontra la presentazione di esempio

Il nostro demo di ritiro nella natura a tre diapositive parte da 10.81 MB. È stato preparato con:

  • Tre master, anche se ne viene usato solo uno.
  • 32 layout, anche se ne viene usato solo uno.
  • Il font completo Noto Sans, inclusi molti caratteri assenti dalle diapositive.
  • Tre immagini PNG 1536 × 1024, ciascuna ritagliata per mostrare i suoi 768 × 512 pixel centrali.

Le immagini complete rimangono all’interno del PPTX originale. Le loro aree visibili vengono visualizzate a 96 DPI, già al di sotto del limite di 150 DPI dell’assistente.

Scarica la presentazione originale per seguirla. L’esempio utilizza illustrazioni paesaggistiche generate originali e un font con licenza aperta.

Comprimi la presentazione passo dopo passo

Utilizza Aspose.Slides for .NET 26.11 o versioni successive e carica la tua licenza prima di eseguire gli esempi. Il progetto C# scaricabile utilizza il pacchetto .NET cross‑platform e legge il percorso della licenza da ASPOSE_TOTAL_LICENSE.

Ogni operazione gestisce una diversa fonte di dati superflui:

  1. Rimuovere layout inutilizzati. Elimina i layout a cui non fa riferimento alcuna diapositiva della presentazione. Fai questo per primo così i loro master possono diventare inutilizzati.
  2. Rimuovere master inutilizzati. Elimina i master che non sono più necessari.
  3. Sottocampionare i font incorporati. Conserva i dati dei font necessari per i caratteri usati nella presentazione. Il testo mantenuto rimane modificabile.
  4. Comprimere le immagini. Applica il limite di 150 DPI e scarta definitivamente le aree ritagliate delle immagini. Qui, i pixel visibili dell’immagine non necessitano di riduzione di risoluzione.
using Aspose.Slides;
using Aspose.Slides.Export;
using Aspose.Slides.LowCode;

using var presentation = new Presentation("compression-demo-original.pptx");

// 1. Remove layouts that no slide uses.
Compress.RemoveUnusedLayoutSlides(presentation);
// 2. Remove masters that are now unused.
Compress.RemoveUnusedMasterSlides(presentation);
// 3. Keep the characters used from embedded fonts.
Compress.CompressEmbeddedFonts(presentation);
// 4. Compress pictures and remove cropped areas.
Compress.CompressImages(presentation, PicturesCompression.Dpi150);

presentation.Save("compressed-step-by-step.pptx", SaveFormat.Pptx);

CompressImages funziona anche da solo quando desideri una compressione solo delle immagini. Scegli un altro valore PicturesCompression per una risoluzione target diversa. Entrambi gli esempi qui puntano a 26,11; l’helper per le immagini è stato introdotto insieme al metodo combinato. Consulta la guida alla compressione per i tipi di immagine e le limitazioni.

Esegui lo stesso lavoro con una chiamata

Quando queste impostazioni predefinite soddisfano il tuo compito, CompressPresentation sostituisce le quattro chiamate individuali. Riparti dalla presentazione originale di nuovo:

using Aspose.Slides;
using Aspose.Slides.Export;
using Aspose.Slides.LowCode;

using var presentation = new Presentation("compression-demo-original.pptx");
Compress.CompressPresentation(presentation);
presentation.Save("compression-demo-compressed.pptx", SaveFormat.Pptx);

Carichi ancora la presentazione e salvi il risultato esplicitamente. Il nuovo metodo combina le operazioni di pulizia e corregge il target dell’immagine a 150 DPI.

Confronta i risultati

Queste sono le dimensioni dei file salvati dal campione fornito. I singoli passaggi sono cumulativi; l’ultima riga riparte dal file originale. MB indica 1.000.000 di byte.

Presentazione salvataByteMB
Presentazione originale10,814,20010.81
Dopo aver rimosso layout inutilizzati10,766,02310.77
Dopo aver rimosso master inutilizzati10,757,84910.76
Dopo il subset dei font10,591,85110.59
Dopo la compressione delle immagini3,709,4603.71
Con CompressPresentation3,709,4603.71

Il metodo combinato ha ridotto la presentazione del 65.7%, a 3.71 MB. Entrambi i flussi di lavoro hanno prodotto lo stesso aspetto delle diapositive.

Diapositiva originale e compressa della foresta mostrata fianco a fianco

Per questo esempio, i pixel PNG conservati erano identici e i tre rendering delle diapositive 1280 × 720 corrispondevano pixel per pixel. Il carattere incorporato è diventato più piccolo mantenendo i caratteri utilizzati dalle diapositive. Questo è il risultato per questo esempio preparato, non una garanzia per ogni presentazione o risoluzione di rendering.

Conserva un file di output separato. Le aree di immagine ritagliate vengono rimosse in modo permanente e i layout, i master e i caratteri di font non utilizzati eliminati potrebbero essere utili per modifiche successive. Le immagini con una risoluzione superiore a 150 DPI possono perdere dettagli a causa del downsampling. Il risparmio dipende dal contenuto della presentazione.

Scarica e provalo

Apri le due presentazioni affiancate, oppure esegui gli esempi su una copia del tuo file. La guida dettagliata spiega i controlli individuali e il contenuto di immagine supportato.