结合 PowerPoint Online

合并 PowerPoint |使用 Java Cloud SDK 合并 PPT PPTX

在本文中,我们将详细讨论如何将多个 PowerPoint 合并到一个演示文稿文件中。 PowerPoint 用于企业文化中的信息展示和简报,商务人士和学生也使用它们来准备幻灯片放映。流行的另一个方面是创建教程、数字作品集、基本动画或照片幻灯片创建。但是,当团队在分布式环境中工作时,我们可能会有合并 PowerPoint 演示文稿的需求。因此,本文阐明了使用 Java Cloud SDK 将多个 PowerPoint 组合成一个演示文稿的细节。

合并 PowerPoint API

为了以编程方式创建、编辑和导出 PPTPPTXPDFJPEGPNGGIF等格式,我们开发了名为Aspose.Slides Cloud的低代码API。其基于 REST 的架构使您能够在任何平台上调用 API 例程。现在为了实现在Java应用程序中结合PowerPoint演示文稿的功能,我们专门创建了Aspose.Slides Cloud SDK for Java。因此,为了使用 SDK,您需要做的就是在 maven 构建项目的 pom.xml 中添加它的引用。

<repositories> 
    <repository>
        <id>aspose-cloud</id>
        <name>artifact.aspose-cloud-releases</name>
        <url>https://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>

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

在 Java 中结合 PowerPoint

本节详细介绍了如何使用 Java Cloud SDK 合并 powerpoint 演示文稿。请注意,为了合并 PowerPoint,输入的 PowerPoint 可以从本地驱动器加载,从云存储加载,甚至直接从 Web URL 加载。请按照下面指定的说明进行操作。

  • 首先,创建 SlidesApi 对象的对象,同时提供 ClientID 和 Client secret 作为参数
  • 其次,创建一个 FileInfo 对象,我们在其中为第一个 PowerPoint 提供数据
  • 第三,创建一个 ArrayList 的实例,它将保存要合并的 PPT 文件列表
  • 下一步是为每个要合并的 PowerPoint 创建一个单独的 PresentationToMerge 对象
  • 现在为了从本地存储加载 PowerPoint,我们需要使用 PresentationToMerge 枚举中的 REQUEST 值
  • 为了指定要合并的 PowerPoint 中的特定幻灯片,我们使用 setSlides(…) 方法
  • 下一步是设置要合并的演示文件的顺序,为此,我们将使用 OrderedMergeRequest 对象并使用其 setPresentations(..) 方法
  • 最后调用 mergeAndSaveOnline(…) 方法合并 powerpoint 演示文稿并将生成的文件保存在云存储中
try
    {	    
        // 从 https://dashboard.aspose.cloud/ 获取 ClientID 和 ClientSecret
	String clientId = "7ef10407-c1b7-43bd-9603-5ea9c6db83cd";
	String clientSecret = "ba7cc4dc0c0478d7b508dd8ffa029845";

	// 创建 SlidesApi 的实例
	SlidesApi slidesApi = new SlidesApi(clientId,clientSecret);
        
	// 收集要合并的演示文稿。
	FileInfo fileInfo = new FileInfo();
	// 读取输入演示 
	fileInfo.setData(Files.readAllBytes(Paths.get("TemplateCV.pptx")));
	// 设置源 PowerPoint 的名称
	fileInfo.setName("TemplateCV.pptx");

	// 创建 FileInfo 对象的数组列表
	List<FileInfo> files = new ArrayList<FileInfo>();
	// 将 FileInfo 对象添加到 Array 列表
	files.add(fileInfo);

	// 为要合并的第一个演示文稿准备信息。
	PresentationToMerge presentation1 = new PresentationToMerge();
	// 从本地驱动器读取 PowerPoint
	presentation1.setSource(PresentationToMerge.SourceEnum.REQUEST);
	// 设置第一个 PowerPoint 文件的路径
	presentation1.setPath("TemplateCV.pptx");
	// 指定我们需要合并的 PowerPoint 幻灯片
	presentation1.setSlides(Arrays.asList(1, 2));
	       
	// 为要合并的第一个演示文稿准备信息。
	PresentationToMerge presentation2 = new PresentationToMerge();
	presentation2.setPath("Presentation1.pptx");
	// 如果 PowerPoint 受密码保护,则设置密码详细信息
	///presentation2.setPassword("my_password");
	// 将源指定为云存储
	presentation2.setSource(PresentationToMerge.SourceEnum.STORAGE);

	// 为要合并的第一个演示文稿准备信息。
	PresentationToMerge presentation3 = new PresentationToMerge();
	// PowerPoint 的路径作为 Web URL
	presentation3.setPath("https://github.com/aspose-slides-cloud/aspose-slides-cloud-java/blob/master/TestData/test-unprotected.pptx");
	presentation3.setSlides(Arrays.asList(1));
	// 将路径值设置为 URL
	presentation3.setSource(PresentationToMerge.SourceEnum.URL);

        // 准备合并请求。
	OrderedMergeRequest request = new OrderedMergeRequest();
	// 设置 PowerPoint 演示文稿的合并顺序
	request.setPresentations(Arrays.asList(presentation1, presentation2));//, presentation3));
  
        // 调用 API 合并 PowerPoint 并将输出保存在云存储中
	slidesApi.mergeAndSaveOnline("Merged.pptx", files, request, "internal");  // mergeOnline(files, request, null);
        
        System.out.println("Merge PowerPoint successful !");
	}catch(Exception ex)
	{
	    System.out.println(ex);
	}
合并 PowerPoint 预览

Image1:- 合并 PowerPoint 预览

上例中使用的示例文件可以从TemplateCV.pptxPresentation1.pptxMerged.ppt下载。

使用 cURL 命令合并 PowerPoint

cURL 命令与平台无关,可以在任何平台上执行。因此,本节分享有关如何使用 cURL 命令合并 PowerPoint 演示文稿的详细信息。因此,这种方法的先决条件是,首先我们需要在执行以下命令时生成 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 演示文稿。请注意,在以下命令中,我们正在合并第一个演示文稿和第二个演示文稿中的第一张幻灯片,第一张和第三张幻灯片被合并。合并的 PPTX 保存在云存储中。

curl -v -X PUT "https://api.aspose.cloud/v3.0/slides/merge?outPath=newResultant.pptx" \
-H  "accept: application/json" \
-H  "authorization: Bearer <JWT Token>" \
-H  "Content-Type: application/json" \
-d "{  \"Presentations\": [    {      \"Path\": \"Presentation1.pptx\",      \"Password\": \"string\",      \"Slides\": [        1      ],      \"Source\": \"Storage\"    },    {      \"Path\": \"test-unprotected.pptx\",      \"Password\": \"string\",      \"Slides\": [        1,3      ],      \"Source\": \"Storage\"    }  ]}"

结论

本文为我们提供了使用 Java Cloud SDK 组合 PowerPoint 演示文稿的详细信息。除了 Java 代码片段,我们还了解了如何使用 cURL 命令将多个 powerpoints 合并为一个的详细信息。此外,我们强烈建议浏览产品 文档 以了解 Cloud API 提供的大量惊人功能。另外请注意,我们所有的 Cloud SDK 都是在 MIT 许可下发布的,因此您可以考虑从 GitHub 下载完整的源代码并根据您的要求进行修改。如有任何问题,您可以考虑通过免费的 产品支持论坛 联系我们寻求快速解决方案。

相关文章

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