Python에서 PowerPoint 프리젠테이션을 TIFF로 변환

소개

TIFF (Tagged Image File Format)는 다중 페이지와 무손실 압축을 지원하는 래스터 이미지 포맷입니다. 하나의 이미지 파일에 렌더링된 슬라이드를 저장하는 데 유용합니다.

Aspose.Slides for Python via Java를 사용하면 PowerPoint(PPT, PPTX) 및 OpenDocument(ODP) 프레젠테이션을 TIFF로 변환할 수 있습니다. 아래 예제는 필요 시 Java 가상 머신을 시작하고 사용 후 프레젠테이션을 해제합니다.

프레젠테이션을 TIFF로 변환

Presentation 클래스가 제공하는 save 메서드를 사용하면 전체 PowerPoint 프레젠테이션을 빠르게 TIFF로 변환할 수 있습니다. 결과 멀티페이지 TIFF에는 기본 크기의 각 슬라이드가 렌더링된 이미지가 포함됩니다.

다음 코드는 PowerPoint 프레젠테이션을 TIFF로 변환하는 방법을 보여줍니다:

import jpype
import asposeslides

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

from asposeslides.api import Presentation, SaveFormat

presentation = Presentation("presentation.pptx")
try:
    # 모든 슬라이드를 다중 페이지 TIFF 파일로 저장합니다.
    presentation.save("output.tiff", SaveFormat.Tiff)
finally:
    presentation.dispose()

프레젠테이션을 흑백 TIFF로 변환

TiffOptions 클래스의 setBwConversionMode 메서드를 사용하면 색상이 있는 슬라이드나 이미지를 흑백 TIFF로 변환할 때 사용할 알고리즘을 지정할 수 있습니다. 이 설정은 setCompressionType 메서드가 TiffCompressionTypes.CCITT4 또는 TiffCompressionTypes.CCITT3 로 설정된 경우에만 적용됩니다.

예를 들어 “sample.pptx” 파일에 다음과 같은 슬라이드가 있다고 가정합니다:

프레젠테이션 슬라이드

다음 코드는 컬러 슬라이드를 흑백 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()

결과:

흑백 TIFF

사용자 정의 크기의 TIFF로 프레젠테이션 변환

특정 크기의 TIFF 이미지가 필요한 경우 TiffOptions에서 제공하는 메서드를 사용해 원하는 값을 설정할 수 있습니다. 예를 들어 setImageSize 메서드를 사용하면 결과 이미지의 크기를 정의할 수 있습니다.

다음 코드는 사용자 정의 크기의 TIFF 이미지로 PowerPoint 프레젠테이션을 변환하는 방법을 보여줍니다:

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)

    # 수평 및 수직 해상도를 설정합니다.
    tiff_options.setDpiX(200)
    tiff_options.setDpiY(200)

    # 출력 크기를 픽셀 단위로 설정합니다.
    image_size = Dimension(1728, 1078)
    tiff_options.setImageSize(image_size)

    # 각 슬라이드 아래에 전체 발표자 메모를 포함합니다.
    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()

사용자 정의 이미지 픽셀 형식의 TIFF로 프레젠테이션 변환

TiffOptions 클래스의 setPixelFormat 메서드를 사용하면 결과 TIFF 이미지에 원하는 픽셀 형식을 지정할 수 있습니다.

다음 코드는 사용자 정의 픽셀 형식의 TIFF 이미지로 PowerPoint 프레젠테이션을 변환하는 방법을 보여줍니다:

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

전체 PowerPoint 프레젠테이션이 아니라 개별 슬라이드를 TIFF로 변환할 수 있나요?

예. Aspose.Slides를 사용하면 PowerPoint 및 OpenDocument 프레젠테이션의 개별 슬라이드를 별도로 TIFF 이미지로 변환할 수 있습니다.

프레젠테이션을 TIFF로 변환할 때 슬라이드 수에 제한이 있나요?

TIFF 내보내기에 고정된 슬라이드 수 제한은 없습니다. 사용 가능한 메모리, 슬라이드 복잡도 및 출력 크기에 따라 처리 가능한 프레젠테이션 크기가 달라집니다.

슬라이드를 TIFF로 변환할 때 PowerPoint 애니메이션 및 전환 효과가 유지되나요?

아니요, TIFF는 정적 이미지 포맷입니다. 따라서 애니메이션 및 전환 효과는 보존되지 않으며 슬라이드의 정적 스냅샷만 내보내집니다.