包含图片和注释选项
概览
在转换 PDF 文档到一些格式的过程当中,ComPDFKit Conversion SDK 会提供两个额外选项,其中一个来决定生成的文档是否包含图片,另一个来决定生成的文档是否包含 PDF 文件中的注释。
当 “包含图片” 的选项被打开时,ComPDFKit Conversion SDK 会将 PDF 文档中的图片提取出来并将其嵌入到输出文件中的对应页面的对应位置。针对多张图片重叠的区域,ComPDFKit Conversion SDK 则会将这些图片合并为一张图片并将其嵌入到输出文件中的对应页面的对应位置。
当 “包含注释” 的选项被打开时,大多数注释会被转换成光栅图片并嵌入进您的文档的对应位置,但是高亮、下划线、删除线和波浪线这几种注释在 PDF 转 Word、PPT 和 HTML 格式中会被转换成对应文件格式中的高亮、下划线、删除线和波浪线,并标记在对应的文字上(但并非会 100% 准确)。
在 ComPDFKit Conversion SDK 中,包含图片和注释选项常用于以下格式转换中:
- PDF 转 Word
- PDF 转 Excel
- PDF 转 PPT
- PDF 转 HTML
- PDF 转 RTF
关于文本标记注释
高亮注释: 高亮注释在转换到 Word 格式中时,由于 Microsoft Word 格式中的高亮注释仅支持 15 种颜色,为了尽可能还原原文档的效果,Word 中被标记的文字将会被添加上与原文档注释颜色相同的文字底色。在转换到 Microsoft PPT 格式中则是采用格式内原生的高亮标签进行标记。而在转换到 HTML 格式时,这种处理则变为,为被标记的文字单独生成一个
<span>
标签并将该内容的样式背景设置为与原文档对应注释相同的颜色。下划线 & 波浪线: 下划线注释与波浪线注释在转换到 Word 与 PPT 格式时,被标记的文字将会被添加上 Microsoft office 原生支持的与原注释样式相同的下划线/波浪线。在转换到 HTML 格式时,被标记的文字会被添加上对应的样式来展示同样的效果。但如果在原文档中过一段文字同时被下划线和波浪线标记,那么由于在这三种格式中,波浪线本质上其实是下划线的一种,因此在实际转换结果中这段文字只会被下划线或波浪线中的任意一种标记。
删除线: 删除线注释在转换到转换到 Word 与 PPT 格式时,被标记的文字将会被添加上 Microsoft office 原生支持的删除线,但是在这两种格式中删除线本身的颜色无法与原 PDF 文档中的删除线颜色匹配,因为 Word 和 PPT 中的删除线颜色只会根据标记文本字体本身的颜色而变化。在转换到 HTML 格式中则会展示与原文档同样的删除线颜色。
流排模式下转换 PDF 为 Word 时,暂时不支持文本标记注释。
示例
此示例演示如何使用 ComPDFKit Conversion SDK 将 PDF 文档转换为 Word 文档,且选择在转档后的文件中,包含原文档的图片和注释。
// 获取PDF文件的路径。
NSString *pdfPath = @"...";
// 获取Word文件的路径。
NSString *outputPath = @"...";
CPDFConvertWordOptions *options = [[CPDFConvertWordOptions alloc] init];
// 转换时是否包含图像
[options setIsContainImages:YES];
// 转档时是否包含注释。
[options setIsContainAnnotations:YES];
// PDF 转 Word 的参数对象(CPDFConvertOptions的派生类)布局选项:CPDFConvertRetainPageLayout(该布局选项可根据布局将文本拆分为多个文本框,以保持与原始文件相同的布局)。
[options setLayoutOptions:CPDFConvertRetainPageLayout];
CPDFConverterWord *converter = [[CPDFConverterWord alloc] initWithURL:[NSURL fileURLWithPath:pdfPath] password:nil];
[converter convertToFilePath:outputPath pageIndexs:nil options:options];