Converti presentazioni PowerPoint in TIFF in PHP

Introduzione

TIFF (Tagged Image File Format) è un formato raster senza perdita ampiamente utilizzato, noto per la sua qualità eccezionale e la conservazione dettagliata della grafica. Designer, fotografi e editori desktop scelgono spesso TIFF per mantenere i livelli, l’accuratezza dei colori e le impostazioni originali nelle loro immagini.

Utilizzando Aspose.Slides, è possibile convertire senza sforzo le diapositive PowerPoint (PPT, PPTX) e le diapositive OpenDocument (ODP) direttamente in immagini TIFF di alta qualità, garantendo che le presentazioni conservino la massima fedeltà visiva.

Convertire una presentazione in TIFF

Utilizzando il metodo save fornito dalla classe Presentation, è possibile convertire rapidamente un’intera presentazione PowerPoint in TIFF. Le immagini TIFF risultanti corrispondono alle dimensioni predefinite della diapositiva.

Questo codice dimostra come convertire una presentazione PowerPoint in TIFF:

// Istanzia la classe Presentation che rappresenta un file di presentazione (PPT, PPTX, ODP, ecc.).
$presentation = new Presentation("presentation.pptx");
try {
    // Salva la presentazione come TIFF.
    $presentation->save("output.tiff", SaveFormat::Tiff);
} finally {
    $presentation->dispose();
}

Convertire una presentazione in TIFF in bianco e nero

Il metodo setBwConversionMode nella classe TiffOptions consente di specificare l’algoritmo da utilizzare durante la conversione di una diapositiva o immagine a colori in un TIFF in bianco e nero. Si noti che questa impostazione si applica solo quando il metodo setCompressionType è impostato su CCITT4 o CCITT3.

Supponiamo di avere un file “sample.pptx” con la seguente diapositiva:

Diapositiva di una presentazione

Questo codice dimostra come convertire la diapositiva a colori in un TIFF in bianco e nero:

$tiffOptions = new TiffOptions();
$tiffOptions->setCompressionType(TiffCompressionTypes::CCITT4);
$tiffOptions->setBwConversionMode(BlackWhiteConversionMode::Dithering);

$presentation = new Presentation("sample.pptx");
try {
    $presentation->save("output.tiff", SaveFormat::Tiff, $tiffOptions);
} finally {
    $presentation->dispose();
}

Il risultato:

TIFF in bianco e nero

Convertire una presentazione in TIFF con dimensioni personalizzate

Se è necessario un’immagine TIFF con dimensioni specifiche, è possibile impostare i valori desiderati utilizzando i metodi disponibili in TiffOptions. Per esempio, il metodo setImageSize consente di definire le dimensioni dell’immagine risultante.

Questo codice dimostra come convertire una presentazione PowerPoint in immagini TIFF con dimensioni personalizzate:

// Istanzia la classe Presentation che rappresenta un file di presentazione (PPT, PPTX, ODP, ecc.).
$presentation = new Presentation("presentation.pptx");
try {
    $tiffOptions = new TiffOptions();

    // Imposta il tipo di compressione.
    $tiffOptions->setCompressionType(TiffCompressionTypes::Default);
    /*
    Tipi di compressione:
        Default - Specifica lo schema di compressione predefinito (LZW).
        None - Specifica nessuna compressione.
        CCITT3
        CCITT4
        LZW
        RLE
    */

    // La profondità dipende dal tipo di compressione e non può essere impostata manualmente.

    // Imposta i DPI dell'immagine.
    $tiffOptions->setDpiX(200);
    $tiffOptions->setDpiY(200);

    // Imposta la dimensione dell'immagine.
    $tiffOptions->setImageSize(new Java("java.awt.Dimension", 1728, 1078));

    $notesOptions = new NotesCommentsLayoutingOptions();
    $notesOptions->setNotesPosition(NotesPositions::BottomFull);
    $tiffOptions->setSlidesLayoutOptions($notesOptions);

    // Salva la presentazione come TIFF con le dimensioni specificate.
    $presentation->save("tiff-ImageSize.tiff", SaveFormat::Tiff, $tiffOptions);
} finally {
    $presentation->dispose();
}

Convertire una presentazione in TIFF con formato pixel dell’immagine personalizzato

Utilizzando il metodo setPixelFormat della classe TiffOptions, è possibile specificare il formato pixel preferito per l’immagine TIFF risultante.

Questo codice dimostra come convertire una presentazione PowerPoint in un’immagine TIFF con un formato pixel personalizzato:

// Istanzia la classe Presentation che rappresenta un file di presentazione (PPT, PPTX, ODP, ecc.).
$presentation = new Presentation("presentation.pptx");
try {
    $tiffOptions = new TiffOptions();

    $tiffOptions->setPixelFormat(ImagePixelFormat::Format8bppIndexed);
    /*
    ImagePixelFormat contiene i seguenti valori (come indicato nella documentazione):
        Format1bppIndexed - 1 bit per pixel, indicizzato.
        Format4bppIndexed - 4 bit per pixel, indicizzato.
        Format8bppIndexed - 8 bit per pixel, indicizzato.
        Format24bppRgb    - 24 bit per pixel, RGB.
        Format32bppArgb   - 32 bit per pixel, ARGB.
    */

    // Salva la presentazione come TIFF con le dimensioni dell'immagine specificate.
    $presentation->save("Tiff-PixelFormat.tiff", SaveFormat::Tiff, $tiffOptions);
} finally {
    $presentation->dispose();
}

FAQ

Posso convertire una diapositiva individuale invece dell’intera presentazione PowerPoint in TIFF?

Sì. Aspose.Slides consente di convertire singole diapositive da presentazioni PowerPoint e OpenDocument in immagini TIFF separatamente.

Esiste un limite al numero di diapositive quando si converte una presentazione in TIFF?

No, Aspose.Slides non impone alcuna restrizione sul numero di diapositive. È possibile convertire presentazioni di qualsiasi dimensione in formato TIFF.

Le animazioni e gli effetti di transizione di PowerPoint vengono preservati durante la conversione delle diapositive in TIFF?

No, TIFF è un formato di immagine statico. Pertanto, le animazioni e gli effetti di transizione non vengono conservati; vengono esportate solo istantanee statiche delle diapositive.