从 PowerPoint 中提取图像

使用 Java Cloud SDK 提取 PPT 图片

PowerPoints 演示文稿通常由文本、图像、图表、形状等组成,我们可能需要仅提取 PPT 图像以进行进一步处理。因此,在本文中,我们将详细讨论如何使用 Java Cloud SDK 从 PPTX 在线提取图像。 API 提供了提取指定格式图像的方法,包括 JPEGPNGGIFBMPTIFF。此外,为了提取图像,我们可以从云存储加载演示文稿或从本地驱动器上传。

PowerPoint 处理 API

Aspose.Slides Cloud 是基于 REST 的 API,提供创建、处理 PPT 以及将 PowerPoint 转换为其他支持格式的功能。现在,为了在 Java 应用程序中利用相同的 PowerPoint 处理功能,Aspose.Slides Cloud SDK for Java 是一个可靠的解决方案。它是 Cloud API 的包装器,可以通过 pom.xml 文件添加其引用轻松集成到 Java 应用程序中。

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>http://artifact.aspose.cloud/repo</url>
    </repository>   
</repositories>

<dependencies>
    <dependency>
        <groupId>com.aspose</groupId>
        <artifactId>aspose-slides-cloud</artifactId>
        <version>22.9.0</version>
    </dependency>
</dependencies>

如果您没有 Aspose Cloud 的现有帐户,请使用有效的电子邮件地址创建一个免费帐户。然后使用新创建的帐户登录并在 Cloud Dashboard 查找/创建客户端 ID 和客户端密码。在以下部分中,出于身份验证目的需要这些详细信息。

用Java提取PPT图片

本节详细介绍如何使用 Java 代码片段提取 PPT 图片。我们将从云存储中加载 PowerPoint 并从 PowerPoint 中提取所有图像。提取的图像作为单个 .zip 存档返回。请按照下面指定的说明进行操作。

  • 首先,创建 SlidesApi 对象的对象,同时提供 ClientID 和 Client secret 作为参数
  • 其次,创建一个以输入的PowerPoint模板文件地址为参数的File实例
  • 第三,使用 readAllBytes(…) 读取 PowerPoint 文件的内容并将其保存在 byte[] 数组中
  • 下一步是使用 uploadFile(…) 方法将 PPT 上传到云存储
  • 最后调用 downloadImages(…) 方法,同时提供 ImageExportFormat.JPEG 枚举值,以便以 JPG 格式提取图像
https://github.com/aspose-slides-cloud/aspose-slides-cloud-java
try
    { 
        // 从 https://dashboard.aspose.cloud/ 获取 ClientID 和 ClientSecret
	String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
	String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

	// 创建 SlidesApi 的实例
	SlidesApi slidesApi = new SlidesApi(clientId,clientSecret);
		        
	// 从本地系统加载文件
	File f = new File("tf03431377_win32.potx");

	// 加载第一个 PowerPoint 演示文稿
	byte[] bytes = Files.readAllBytes(f.toPath());
	slidesApi.uploadFile("input.potx", bytes, null);
      
        // 以 JPEG 格式提取所有图像
	File imageFile = slidesApi.downloadImages("input.potx", ImageExportFormat.JPEG, null, null, null);

	// 打印成功信息
	System.out.println("Extracted images are saved to " + imageFile.getPath());
    }catch(Exception ex)
    {
	System.out.println(ex);
    }
提取 PowerPoint 图像预览

Image1:- 提取PPT图片预览

上例中使用的示例演示模板可以从 RainbowPresentation.potx 下载。

使用 cURL 命令从 PPTX 中提取图像

现在让我们详细了解如何使用 cURL 命令从 PPTX 在线提取图像。因此,第一步是在执行以下命令时生成 JWT 访问令牌(基于客户端凭据)。

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=bb959721-5780-4be6-be35-ff5c3a6aa4a2&client_secret=4d84d5f6584160cbd91dba1fe145db14" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"

一旦我们有了 JWT 令牌,请执行以下命令,下一步是使用以下命令合并 PowerPoint 演示文稿。请注意,在以下命令中,我们将提取 JPEG 格式的所有 PowerPoint 图像。提取的图像然后以 .zip 存档格式保存到本地驱动器。

curl -v -X POST "https://api.aspose.cloud/v3.0/slides/input.potx/images/download/Jpeg" \
-H  "accept: multipart/form-data" \
-H  "authorization: Bearer <JWT Token>" \
-o output.zip

结论

本文详细介绍了如何使用 Java Cloud SDK 提取 PPT 图片。同时,由于该API是基于REST架构的,所以我们也可以通过cURL命令来访问它来完成类似的需求。除此功能外,API 还提供了广泛的功能,因此我们强烈建议您探索产品 文档。另外请注意,我们所有的 Cloud SDK 都是在 MIT 许可下发布的,因此您可以考虑从 GitHub 下载完整的源代码并根据您的要求进行修改。如有任何问题,您可以考虑通过免费的 产品支持论坛 联系我们寻求快速解决方案。

相关文章

请访问以下链接以了解更多信息: