JavaでPowerPointプレゼンテーションをTIFFに変換

概要

TIFF (Tagged Image File Format) は、卓越した品質とグラフィックの詳細な保存で知られる、広く使用されているロスレスラスター画像フォーマットです。デザイナー、フォトグラファー、デスクトップパブリッシャーは、画像のレイヤー、色精度、元の設定を保持するために TIFF を選択することが多いです。

Aspose.Slides を使用すると、PowerPoint スライド (PPT, PPTX) と OpenDocument スライド (ODP) を直接高品質な TIFF 画像に簡単に変換でき、プレゼンテーションの視覚的忠実度を最大限に保つことができます。

プレゼンテーションを TIFF に変換

Presentation クラスが提供する save メソッドを使用すると、PowerPoint プレゼンテーション全体を簡単に TIFF に変換できます。生成される TIFF 画像はデフォルトのスライドサイズに対応します。

このコードは、PowerPoint プレゼンテーションを TIFF に変換する方法を示しています:

// プレゼンテーション ファイル (PPT、PPTX、ODP など) を表す Presentation クラスのインスタンスを作成します。
Presentation presentation = new Presentation("presentation.pptx");
try {
    // プレゼンテーションを TIFF として保存します。
    presentation.save("output.tiff", SaveFormat.Tiff);
} finally {
    presentation.dispose();
}

プレゼンテーションを白黒 TIFF に変換

TiffOptions クラスの setBwConversionMode メソッドを使用すると、カラー スライドまたは画像を白黒 TIFF に変換するときに使用するアルゴリズムを指定できます。この設定は、setCompressionType メソッドが CCITT4 または CCITT3 に設定されている場合にのみ適用されます。

例として、以下のスライドを含む “sample.pptx” ファイルがあるとします:

プレゼンテーションスライド

このコードは、カラー スライドを白黒 TIFF に変換する方法を示しています:

TiffOptions tiffOptions = new TiffOptions();
tiffOptions.setCompressionType(TiffCompressionTypes.CCITT4);
tiffOptions.setBwConversionMode(BlackWhiteConversionMode.Dithering);

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

結果:

白黒 TIFF

カスタムサイズでプレゼンテーションを TIFF に変換

特定の寸法の TIFF 画像が必要な場合は、TiffOptions に用意されているメソッドを使用して希望の値を設定できます。例えば、setImageSize メソッドを使用すると、生成される画像のサイズを定義できます。

このコードは、PowerPoint プレゼンテーションをカスタムサイズの TIFF 画像に変換する方法を示しています:

// プレゼンテーション ファイル (PPT、PPTX、ODP など) を表す Presentation クラスのインスタンスを作成します。
Presentation presentation = new Presentation("presentation.pptx");
try {
    TiffOptions tiffOptions = new TiffOptions();

    // 圧縮タイプを設定します。
    tiffOptions.setCompressionType(TiffCompressionTypes.Default);
    /*
    圧縮タイプ:
        Default - デフォルトの圧縮方式 (LZW) を指定します。
        None - 圧縮しません。
        CCITT3
        CCITT4
        LZW
        RLE
    */

    // 深度は圧縮タイプに依存し、手動で設定できません。

    // 画像 DPI を設定します。
    tiffOptions.setDpiX(200);
    tiffOptions.setDpiY(200);

    // 画像サイズを設定します。
    tiffOptions.setImageSize(new Dimension(1728, 1078));

    INotesCommentsLayoutingOptions notesOptions = new NotesCommentsLayoutingOptions();
    notesOptions.setNotesPosition(NotesPositions.BottomFull);
    tiffOptions.setSlidesLayoutOptions(notesOptions);

    // 指定したサイズでプレゼンテーションを TIFF として保存します。
    presentation.save("tiff-ImageSize.tiff", SaveFormat.Tiff, tiffOptions);
} finally {
    presentation.dispose();
}

カスタム画像ピクセル形式でプレゼンテーションを TIFF に変換

TiffOptions クラスの setPixelFormat メソッドを使用すると、生成される TIFF 画像のピクセル形式を好みで指定できます。

このコードは、PowerPoint プレゼンテーションをカスタムピクセル形式の TIFF 画像に変換する方法を示しています:

// プレゼンテーション ファイル (PPT、PPTX、ODP など) を表す Presentation クラスのインスタンスを作成します。
Presentation presentation = new Presentation("presentation.pptx");
try {
    TiffOptions tiffOptions = new TiffOptions();

    tiffOptions.setPixelFormat(ImagePixelFormat.Format8bppIndexed);
    /*
    ImagePixelFormat には以下の値が含まれます (ドキュメントに記載されている通り):
        Format1bppIndexed - 1 ピクセルあたり 1 ビット、インデックス形式。
        Format4bppIndexed - 1 ピクセルあたり 4 ビット、インデックス形式。
        Format8bppIndexed - 1 ピクセルあたり 8 ビット、インデックス形式。
        Format24bppRgb    - 1 ピクセルあたり 24 ビット、RGB。
        Format32bppArgb   - 1 ピクセルあたり 32 ビット、ARGB。
    */
    
    // 指定した画像サイズでプレゼンテーションを TIFF として保存します。
    presentation.save("Tiff-PixelFormat.tiff", SaveFormat.Tiff, tiffOptions);
} finally {
    presentation.dispose();
}

よくある質問

1. 個々のスライドだけを TIFF に変換できますか?

はい。Aspose.Slides を使用すると、PowerPoint および OpenDocument プレゼンテーションから個々のスライドを TIFF 画像として個別に変換できます。

2. プレゼンテーションを TIFF に変換する際、スライド数に制限はありますか?

いいえ、Aspose.Slides はスライド数に制限を設けていません。任意のサイズのプレゼンテーションを TIFF 形式に変換できます。

3. スライドを TIFF に変換した場合、PowerPoint のアニメーションやトランジション効果は保持されますか?

いいえ、TIFF は静的画像形式です。そのため、アニメーションやトランジション効果は保持されず、スライドの静止画のみがエクスポートされます。