C# 如何读取和显示PDF?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C# 如何读取和显示PDF?相关的知识,希望对你有一定的参考价值。
你要是读取的话,可以参考下面这个例子,用的是Spire.PDF来读取读取PDF,要是你要显示PDF,需要用Spire.PDFViewer
参考技术A 先安装Acrobat Reader,工具箱上选择项,添加一个Adobe PDF Reader在Form上放置一个Adobe PDF Reader控件,代码:
private void Form1_Load(object sender, EventArgs e)
axAcroPDF1.LoadFile(@"D:\美国国家地理.pdf");
axAcroPDF1.setShowToolbar(false);
axAcroPDF1.setShowScrollbars(false);
axAcroPDF1.setPageMode("pages only");
效果:
iTextSharp PDF 使用 C# 读取突出显示的文本(突出显示注释)
【中文标题】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# 开发人员)。
【讨论】:
以上是关于C# 如何读取和显示PDF?的主要内容,如果未能解决你的问题,请参考以下文章
求助,c#如何利用iTextSharp.dll读取PDF的书签信息
如何在 C# 中从外部站点的 url 读取 PDF 文件 [关闭]