Konwertowanie prezentacji PowerPoint do TIFF w Pythonie

Wprowadzenie

TIFF (Tagged Image File Format) to format obrazu rastrowego, który obsługuje wiele stron oraz bezstratną kompresję. Jest przydatny do przechowywania renderowanych slajdów w jednym pliku obrazu.

Korzystając z Aspose.Slides for Python via Java, możesz konwertować prezentacje PowerPoint (PPT, PPTX) oraz OpenDocument (ODP) do formatu TIFF. Każdy przykład poniżej uruchamia maszynę wirtualną Javy, jeśli jest to konieczne, i zwalnia prezentację po użyciu.

Konwertowanie prezentacji do formatu TIFF

Używając metody save udostępnionej przez klasę Presentation, możesz szybko konwertować całą prezentację PowerPoint do formatu TIFF. Powstały wielostronicowy plik TIFF zawiera renderowany obraz każdego slajdu w domyślnym rozmiarze.

Ten kod pokazuje, jak przekonwertować prezentację PowerPoint do formatu TIFF:

import jpype
import asposeslides

if not jpype.isJVMStarted():
    jpype.startJVM()

from asposeslides.api import Presentation, SaveFormat

presentation = Presentation("presentation.pptx")
try:
    # Zapisz wszystkie slajdy w wielostronicowym pliku TIFF.
    presentation.save("output.tiff", SaveFormat.Tiff)
finally:
    presentation.dispose()

Konwertowanie prezentacji do czarno-białego TIFF

Metoda setBwConversionMode w klasie TiffOptions umożliwia określenie algorytmu używanego przy konwersji kolorowego slajdu lub obrazu do czarno‑białego TIFF. Należy pamiętać, że to ustawienie działa tylko wtedy, gdy metoda setCompressionType jest ustawiona na TiffCompressionTypes.CCITT4 lub TiffCompressionTypes.CCITT3.

Załóżmy, że mamy plik „sample.pptx” z następującym slajdem:

Slajd prezentacji

Ten kod pokazuje, jak przekonwertować kolorowy slajd do czarno‑białego TIFF:

import jpype
import asposeslides

if not jpype.isJVMStarted():
    jpype.startJVM()

from asposeslides.api import BlackWhiteConversionMode, Presentation, SaveFormat, TiffCompressionTypes, TiffOptions

tiff_options = TiffOptions()
tiff_options.setCompressionType(TiffCompressionTypes.CCITT4)
tiff_options.setBwConversionMode(BlackWhiteConversionMode.Dithering)

presentation = Presentation("sample.pptx")
try:
    presentation.save("output.tiff", SaveFormat.Tiff, tiff_options)
finally:
    presentation.dispose()

Wynik:

Czarno-biały TIFF

Konwertowanie prezentacji do TIFF z niestandardowym rozmiarem

Jeśli potrzebujesz obrazu TIFF o określonych wymiarach, możesz ustawić żądane wartości przy użyciu metod dostępnych w TiffOptions. Na przykład metoda setImageSize pozwala zdefiniować rozmiar powstałego obrazu.

Ten kod pokazuje, jak przekonwertować prezentację PowerPoint do obrazów TIFF o niestandardowym rozmiarze:

import jpype
import asposeslides

if not jpype.isJVMStarted():
    jpype.startJVM()

from asposeslides.api import NotesCommentsLayoutingOptions, NotesPositions, Presentation, SaveFormat, TiffCompressionTypes, TiffOptions
from java.awt import Dimension

presentation = Presentation("presentation.pptx")
try:
    tiff_options = TiffOptions()
    tiff_options.setCompressionType(TiffCompressionTypes.Default)

    # Ustaw poziomą i pionową rozdzielczość.
    tiff_options.setDpiX(200)
    tiff_options.setDpiY(200)

    # Ustaw wymiary wyjściowe w pikselach.
    image_size = Dimension(1728, 1078)
    tiff_options.setImageSize(image_size)

    # Dołącz pełne notatki prelegenta pod każdym slajdem.
    notes_options = NotesCommentsLayoutingOptions()
    notes_options.setNotesPosition(NotesPositions.BottomFull)
    tiff_options.setSlidesLayoutOptions(notes_options)

    presentation.save("tiff-ImageSize.tiff", SaveFormat.Tiff, tiff_options)
finally:
    presentation.dispose()

Konwertowanie prezentacji do TIFF z niestandardowym formatem pikseli obrazu

Używając metody setPixelFormat z klasy TiffOptions, możesz określić preferowany format pikseli dla powstałego obrazu TIFF.

Ten kod pokazuje, jak przekonwertować prezentację PowerPoint do obrazu TIFF z niestandardowym formatem pikseli:

import jpype
import asposeslides

if not jpype.isJVMStarted():
    jpype.startJVM()

from asposeslides.api import ImagePixelFormat, Presentation, SaveFormat, TiffOptions

presentation = Presentation("presentation.pptx")
try:
    tiff_options = TiffOptions()
    tiff_options.setPixelFormat(ImagePixelFormat.Format8bppIndexed)

    presentation.save("Tiff-PixelFormat.tiff", SaveFormat.Tiff, tiff_options)
finally:
    presentation.dispose()

FAQ

Czy mogę konwertować pojedynczy slajd zamiast całej prezentacji PowerPoint do formatu TIFF?

Tak. Aspose.Slides umożliwia konwersję pojedynczych slajdów z prezentacji PowerPoint i OpenDocument do obrazów TIFF osobno.

Czy istnieje jakiś limit liczby slajdów przy konwersji prezentacji do formatu TIFF?

Nie ma stałego limitu liczby slajdów dla eksportu do TIFF. Dostępna pamięć, złożoność slajdów i wymiary wyjściowe wpływają na rozmiar prezentacji, które można przetworzyć.

Czy animacje i efekty przejść PowerPoint są zachowywane przy konwersji slajdów do TIFF?

Nie, TIFF jest formatem obrazu statycznego. Dlatego animacje i efekty przejść nie są zachowywane; eksportowane są jedynie statyczne migawki slajdów.