JavaでPPTXサムネイルを生成する

サムネイルは、画像のリストを見たりスクロールしたりするのを容易にする、大きな画像の小さなサイズのバージョンです。 MS PowerPointは、プレゼンテーションにサムネイルを使用して、コンテンツを確認し、特定のスライドに移動します。この記事では、Javaを使用してPowerPoint PPTXまたはPPTのサムネイルを生成する方法を学習します。この機能は、WebまたはデスクトップベースのPowerPointビューアの作成中などのシナリオで使用できます。

PowerPoint PPTX/PPTのサムネイルを生成するJavaAPI

PPTXまたはPPTプレゼンテーションのサムネイルを生成するには、Aspose.Slides for Javaを使用します。これは、PowerPointおよびOpenOfficeプレゼンテーションを作成、操作、および変換するための機能豊富なAPIです。 APIをダウンロードするか、次のMaven構成を使用してインストールできます。

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-slides</artifactId>
    <version>21.8</version>
    <classifier>jdk16</classifier>
</dependency>

Javaを使用してPPTXまたはPPTのサムネイルを生成する

以下は、Javaを使用してPPTXプレゼンテーションのサムネイルを生成する手順です。

  1. まず、Presentationクラスのインスタンスを作成して、プレゼンテーションをロードします。
  2. Presentation.getSlides()コレクションの各ISlideをループします。
  3. ISlide.getThumbnail(1f, 1f)メソッドを使用して各スライドの画像を生成し、画像の参照をBufferedImageオブジェクトに取得します。
  4. 出力画像用に新しいFileを作成します。
  5. 最後に、ImageIO.write(BufferedImage, String, File)メソッドを使用して画像を保存します。

次のコードサンプルは、Javaを使用してPPTXプレゼンテーションのサムネイルを生成する方法を示しています。

// PowerPointプレゼンテーションをロードする
Presentation presentation = new Presentation("presentation.pptx");

// プレゼンテーションのスライドを繰り返します
for (ISlide sld : presentation.getSlides()) {
  
	// スライドの実物大の画像を作成する
	BufferedImage bi = sld.getThumbnail(1f, 1f);

	// 画像を保存するための新しいファイルを作成します
	File outputfile = new File("Slide_" + sld.getSlideNumber() + ".png");

	// 画像を保存
	ImageIO.write(bi, "png", outputfile);
}

ユーザー定義のディメンションを使用してサムネイルを生成する

スライドの高さと幅を使用して、サムネイル画像に独自のサイズを指定することもできます。この操作を実行する手順は次のとおりです。

  1. まず、Presentationクラスのインスタンスを作成して、プレゼンテーションをロードします。
  2. 結果のPNG画像のサイズを定義します。
  3. Presentation.getSlides()コレクションの各ISlideをループします。
  4. ISlide.getThumbnail(float scaleX, float scaleY)メソッドを使用して各スライドの画像を生成し、画像の参照をBufferedImageオブジェクトに取得します。
  5. 出力画像用に新しいFileを作成します。
  6. 最後に、ImageIO.write(BufferedImage, String, File)メソッドを使用して画像を保存します。

次のコードサンプルは、カスタマイズされたサイズでPPTXのサムネイルを生成する方法を示しています。

// PowerPointプレゼンテーションをロードする
Presentation presentation = new Presentation("presentation.pptx");

// ユーザー定義のディメンション
int desiredX = 1200;
int desiredY = 800;

// XとYのスケーリングされた値を取得する
float ScaleX = (float) (1.0 / presentation.getSlideSize().getSize().getWidth()) * desiredX;
float ScaleY = (float) (1.0 / presentation.getSlideSize().getSize().getHeight()) * desiredY;

// プレゼンテーションのスライドを繰り返します
for (ISlide sld : presentation.getSlides()) {
  
	// スライドの実物大の画像を作成する
	BufferedImage bi = sld.getThumbnail(ScaleX, ScaleY);

	// 画像を保存するための新しいファイルを作成します
	File outputfile = new File("Slide_" + sld.getSlideNumber() + ".png");

	// 画像を保存
	ImageIO.write(bi, "png", outputfile);
}

無料のAPIライセンスを取得する

一時ライセンスをリクエストすることで、評価の制限なしにAspose.Slides for Javaを使用できます。

結論

この記事では、Javaを使用してPowerPoint PPTXまたはPPTのサムネイルを生成する方法を学習しました。さらに、ユーザー定義の寸法でサムネイルを生成する方法を見てきました。さらに、ドキュメントにアクセスして、APIの他の機能を調べることができます。また、フォーラムからお気軽にお問い合わせください。

関連項目