在 之前的一篇文章 中,我们讨论了如何在 .NET 应用程序中使用 C# 将 PDF 文件转换为 PowerPoint PPT/PPTX 演示文稿。在大多数情况下,基本的转换选项集效果很好。然而,今天,我们将讨论一些将 PDF 转换为 PPTX 的高级技巧:
处理 PDF 到 PPTX C# 中的注释或注释
当我向人们讲述某事并使用演示文稿时,我还喜欢在幻灯片上做笔记、画箭头、用几何形状制作重音等等。
如何在 PDF 上绘图?
这很简单,我在 Adobe Reader DC 或 Microsoft Edge 中打开我的 PDF 文件并使用铅笔工具。默认情况下,Adobe Reader 使用红色铅笔。
而 Microsoft Edge 使用蓝色的。
如果将此类 PDF 文件转换为 PPTX 演示文稿,则所有笔记都将传输到 PPTX 文件。
我们如何修复它?
根据 PDF 标准,我们正在处理页面的内容和名为注释的附加元素。让我们编写一小段 C# 代码来研究此类文档中存在哪些类型的注释。
执行后,我们会得到类似这样的结果:
1 Andrew Ink #E52237
1 Andrew Popup #000000
1 Andrew Square #E52237
1 Andrew Popup #000000
这意味着 PDF 页面上有三种类型的注释:
- 墨水——这是我们的铅笔画,
- Square——我们的矩形图,
- Popup – 弹出式注释在弹出式窗口中显示文本以供输入和编辑。它不应单独出现,而是与标记注释、其父注释相关联,并且应用于编辑父文本。在我们的例子中,弹出注释与 Ink 和 Square 相关联。它应该没有外观流,所以它不会影响到 PDF 到 PPTX 的转换。
删除 PDF 到 PPTX 转换中的注释
因此,为了删除 PDF 中的额外绘图,我们应该删除 Ink 和 Square 注释。以下是执行此操作的步骤。
- 使用 Page.Annotations 属性访问注释。
- 按类型过滤注释。
- 遍历注解并使用 Page.Annotations.Delete(Annotation) 方法一一删除。
下面的 C# 代码片段显示了在 PDF 到 PPTX 转换中删除注释的一种可能方法:
如上所述,演示者可以使用不同的工具和颜色进行评论,我们可以(如果需要)调整最后一个样本。例如,我们只能删除红色(颜色代码#E52237)注释或某些演示者的注释。
让我们尝试另一种方法来改进 PDF 到 PPTX 转换中的图形内容。
C# PDF to PPTX - 从内容图像中分离装饰图形
在将 PDF 转换为 PPTX 时,通常 PDF 文件中的所有图像在输出中被分组为单个背景图像。这并不总是很方便,而且 Aspose.PDF for .NET 有一个特殊模式,可以在将 PDF 转换为 PPTX 时更改转换器的行为。
要启用此模式,您可以将 SeparateImages 属性设置为 true。以下代码片段显示了如何在 C# 中的 PDF 到 PPTX 转换中使用此选项:
因此,上一个示例中的幻灯片将被拆分为 3 张图像。
应该注意的是,并不总是可以准确地将背景图像与内容图像分开。因此,转换器有时会出错并在内容中添加额外的元素。
结论
在本文中,您学习了如何处理 PDF 到 PPTX C# 转换中的注释和装饰图形。您可以使用功能齐全的免费网络应用程序 - Aspose.PDF PPTX Converter 评估我们的 PDF 到 PPTX 转换器的工作质量。