Android でプレゼンテーション シェイプのサムネイルを作成

概要

このトピックでは、さまざまな状況でスライドのサムネイルを生成する方法を示します。

  • スライド内のシェイプ サムネイルの生成
  • ユーザー定義サイズでスライド シェイプのサムネイルを生成
  • シェイプの外観の境界内でサムネイルを生成

スライドからシェイプサムネイルを生成

Aspose.Slides for Android via Java を使用して任意のスライドからシェイプ サムネイルを生成するには、次の手順を実行します。

  1. Presentation クラスのインスタンスを作成します。
  2. ID またはインデックスを使用して任意のスライドの参照を取得します。
  3. シェイプのサムネイル画像を取得 し、デフォルト スケールで参照されたスライドから取得します。
  4. 好みの画像形式でサムネイル画像を保存します。

このサンプル コードは、スライドからシェイプ サムネイルを生成する方法を示しています:

// プレゼンテーション ファイルを表す Presentation クラスのインスタンスを作成
Presentation pres = new Presentation("Thumbnail.pptx");
try {
    // フルスケールの画像を作成
    IImage slideImage = pres.getSlides().get_Item(0).getShapes().get_Item(0).getImage();
    
    // 画像を PNG 形式でディスクに保存
    try {
          slideImage.save("output.png", ImageFormat.Png);
    } finally {
         if (slideImage != null) slideImage.dispose();
    }
} finally {
    if (pres != null) pres.dispose();
}

ユーザー定義スケーリング係数サムネイルの生成

Aspose.Slides for Android via Java を使用してスライドのシェイプ サムネイルをユーザー定義のサイズで生成するには、次の手順を実行します。

  1. Presentation クラスのインスタンスを作成します。
  2. ID またはインデックスを使用して任意のスライドの参照を取得します。
  3. シェイプのサムネイル画像を取得 し、ユーザー定義の寸法で参照されたスライドから取得します。
  4. 好みの画像形式でサムネイル画像を保存します。

このサンプル コードは、定義されたスケーリング係数に基づいてシェイプ サムネイルを生成する方法を示しています:

// プレゼンテーション ファイルを表す Presentation クラスのインスタンスを作成
Presentation pres = new Presentation("Thumbnail.pptx");
try {
    // フルスケールの画像を作成
    IImage slideImage = pres.getSlides().get_Item(0).getShapes().get_Item(0).getImage(ShapeThumbnailBounds.Shape, 1, 1);

    // 画像を PNG 形式でディスクに保存
    try {
          slideImage.save("output.png", ImageFormat.Png);
    } finally {
         if (slideImage != null) slideImage.dispose();
    }
} finally {
    if (pres != null) pres.dispose();
}

境界ベースのシェイプ外観サムネイルの作成

この方法は、シェイプの外観の境界内でサムネイルを生成します。すべてのシェイプ効果が考慮され、生成されたシェイプ サムネイルはスライドの境界によって制限されます。シェイプの外観の境界内でスライド シェイプのサムネイルを生成するには、次の手順を実行します。

  1. Presentation クラスのインスタンスを作成します。
  2. ID またはインデックスを使用して任意のスライドの参照を取得します。
  3. シェイプの外観を境界として、参照されたスライドのサムネイル画像を取得します。
  4. 好みの画像形式でサムネイル画像を保存します。

このサンプル コードは、上記の手順に基づいています:

// プレゼンテーション ファイルを表す Presentation クラスのインスタンスを作成
Presentation pres = new Presentation("Thumbnail.pptx");
try {
    // フルスケールの画像を作成
    IImage slideImage = pres.getSlides().get_Item(0).getShapes().get_Item(0).getImage(ShapeThumbnailBounds.Appearance, 1, 1);

    // 画像を PNG 形式でディスクに保存
    try {
          slideImage.save("output.png", ImageFormat.Png);
    } finally {
         if (slideImage != null) slideImage.dispose();
    }
} finally {
    if (pres != null) pres.dispose();
}

FAQ

シェイプ サムネイルを保存する際に使用できる画像形式は何ですか?

PNG, JPEG, BMP, GIF, TIFF、その他の形式が使用できます。シェイプは、シェイプのコンテンツを SVG として保存することにより、ベクター SVG としてエクスポート も可能です。

サムネイルをレンダリングする際の Shape と Appearance の境界の違いは何ですか?

Shape はシェイプのジオメトリを使用します。Appearance視覚効果(影、光彩など)を考慮します。

シェイプが非表示としてマークされている場合、サムネイルは生成されますか?

非表示のシェイプはモデルの一部として残り、レンダリング可能です。非表示フラグはスライドショーの表示に影響しますが、シェイプの画像生成を妨げません。

グループ シェイプ、チャート、SmartArt などの複雑なオブジェクトはサポートされていますか?

はい。「Shape」として表現できるオブジェクト(GroupShapeChartSmartArt を含む)は、サムネイルまたは SVG として保存できます。

システムにインストールされているフォントは、テキスト シェイプのサムネイル品質に影響しますか?

はい。不要なフォントの置き換えやテキストのリフローを防ぐために、必要なフォントを提供(またはフォント置換を構成)する必要があります。