用Java生成PPTX縮略圖

縮略圖 是較大圖像的小尺寸版本,可以更輕鬆地查看或滾動圖像列表。 MS PowerPoint 還使用演示文稿的縮略圖來瀏覽內容並導航到特定的幻燈片。在本文中,您將學習如何使用 Java 生成 PowerPoint PPTX 或 PPT 的縮略圖。您可以在創建基於 Web 或桌面的 PowerPoint 查看器等場景中使用此功能。

為 PowerPoint PPTX/PPT 生成縮略圖的 Java API

要為 PPTX 或 PPT 演示文稿生成縮略圖,我們將使用 Aspose.Slides for Java。它是一個功能豐富的 API,用於創建、操作和轉換 PowerPoint 和 OpenOffice 演示文稿。您可以 下載 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 的其他功能。此外,您可以隨時通過我們的 論壇 告訴我們您的疑問。

也可以看看