iTextSharp PDF 使用 C# 读取突出显示的文本(突出显示注释)
Posted
技术标签:
【中文标题】iTextSharp PDF 使用 C# 读取突出显示的文本(突出显示注释)【英文标题】:iTextSharp PDF Reading highlighed text (highlight annotations) using C# 【发布时间】:2014-06-14 01:59:18 【问题描述】:我正在开发一个将 pdf 内容转换为文本的 C# winform 应用程序。除了在 pdf 的突出显示文本中找到的内容外,所有必需的内容都被提取出来。 请帮助获取工作示例以提取 pdf 中的突出显示文本。 我在项目中使用 iTextSharp.dll
【问题讨论】:
你说的是注解吗?你需要更清楚。注释是不属于页面内容流的元素。它们始终添加在页面顶部并具有自己的外观流。您可以在 Adobe Reader 的单独面板中列出它们。我们在谈论那种内容吗? 【参考方案1】:假设您在谈论评论。请试试这个:
for (int i = pageFrom; i <= pageTo; i++)
PdfDictionary page = reader.GetPageN(i);
PdfArray annots = page.GetAsArray(iTextSharp.text.pdf.PdfName.ANNOTS);
if (annots!=null)
foreach (PdfObject annot in annots.ArrayList)
PdfDictionary annotation = (PdfDictionary)PdfReader.GetPdfObject(annot);
PdfString contents = annotation.GetAsString(PdfName.CONTENTS);
// now use the String value of contents
这是从内存中编写的(我是 Java 开发人员,而不是 C# 开发人员)。
【讨论】:
以上是关于iTextSharp PDF 使用 C# 读取突出显示的文本(突出显示注释)的主要内容,如果未能解决你的问题,请参考以下文章
求助,c#如何利用iTextSharp.dll读取PDF的书签信息
使用 iTextSharp 突出显示文本减少对 PDF 文件大小的影响