.NET版PDF处理控件Aspose.PDF功能演示:在C#中将PDF文件转换为PPT文稿
PDF是用于可靠交换文档的广泛使用的格式之一,而无需担心布局问题。另一方面,PowerPoint演示文稿(PPT / PPTX)使得以交互式幻灯片的形式呈现数据或信息变得更加容易。在某些情况下,PDF文件中包含的信息需要以PowerPoint演示文稿的形式呈现。在这种情况下,您可以通过自动将信息从PDF导入PowerPoint PPT / PPTX的过程来最大程度地减少工作量。
Aspose.PDF for .NET是一种PDF处理和解析API,用于在跨平台应用程序中执行文档管理和操作任务,可以轻松用于生成,修改,转换,渲染,保护和打印PDF文档,而无需使用Adobe Acrobat。
为了处理这种情况,本文将展示如何使用Aspose.PDF在C#.NET中将PDF转换为PPT文稿。本文将演示如何:
- 在C#中将PDF转换为PowerPoint PPT或PPTX。
- 在C#中将带有幻灯片的PDF转换为PowerPoint PPT或PPTX。
- 跟踪PDF到PowerPoint的转换进度。
近日,.NET版Aspose.PDF升级到v20.3版,支持跟踪将PDF转换为PowerPoint演示文稿的进度,增强链接提取功能,修复多项Bug,感兴趣的朋友可点击下方按钮下载最新版。
在C#中将PDF转换为PPT或PPTX
以下是使用Aspose.PDF for .NET将PDF文件转换为PowerPoint演示文稿的步骤。
- 创建Document 类的对象。
- 创建一个PptxSaveOptions 类的对象。
- 调用Document.Save()方法将PDF保存为PPT或PPTX。
以下代码示例显示了如何在C#中将PDF转换为PPT。
// Load PDF document Document pdfDocument = new Document("document.pdf"); PptxSaveOptions pptxOptions = new PptxSaveOptions(); // Save output file pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
PDF文件
转换的PowerPoint PPT
在C#中将PDF转换为PPT –将幻灯片渲染为图像
如果要避免转换后的PowerPoint演示文稿中包含可选文本,可以将每个幻灯片呈现为图像。为此,可以将PptxSaveOptions.SlidesAsImages属性设置为true,其余步骤将保持不变。下面的代码示例显示了如何在C#中将具有幻灯片作为图像的PDF转换为PPT。
// Load PDF document Document pdfDocument = new Document("document.pdf"); PptxSaveOptions pptxOptions = new PptxSaveOptions(); pptxOptions.SlidesAsImages = true; // Save output file pdfDocument.Save("PDF to PPT.ppt", pptxOptions);
跟踪PDF到PPT的转换进度
使用Aspose.PDF for .NET跟踪PDF到PPT转换过程的进度。可以检索有关转换过程的以下信息:
- 转换总进度
- 转换前对每个页面的分析结束
- 在物理导出之前创建结果页面
- 导出每个结果页面
以下代码示例显示了如何在C#中跟踪PDF到PPT的转换。
// Load PDF document Document pdfDocument = new Document("document.pdf"); PptxSaveOptions pptxOptions = new PptxSaveOptions(); // Render slides as images pptxOptions.SlidesAsImages = true; // Track progress in console pptxOptions.CustomProgressHandler = ShowProgressOnConsole; // Save output file pdfDocument.Save("PDF to PPT.ppt", pptxOptions); //---------------------------------- public static void ShowProgressOnConsole(PptxSaveOptions.ProgressEventHandlerInfo eventInfo) { switch (eventInfo.EventType) { case ProgressEventType.TotalProgress: Console.WriteLine(String.Format("{0} - Conversion progress : {1}% .", DateTime.Now.TimeOfDay, eventInfo.Value.ToString())); break; case ProgressEventType.ResultPageCreated: Console.WriteLine(String.Format("{0} - Result page's {1} of {2} layout created.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString())); break; case ProgressEventType.ResultPageSaved: Console.WriteLine(String.Format("{0} - Result page {1} of {2} exported.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString())); break; case ProgressEventType.SourcePageAnalysed: Console.WriteLine(String.Format("{0} - Source page {1} of {2} analyzed.", DateTime.Now.TimeOfDay, eventInfo.Value.ToString(), eventInfo.MaxValue.ToString())); break; default: break; } }
输出结果
还想要更多吗?您可以点击阅读【2019 · Aspose最新资源整合】,查找需要的教程资源。如果您有任何疑问或需求,请随时加入Aspose技术交流群(642018183),我们很高兴为您提供查询和咨询。