C#winform adobe PDF reader 控件
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C#winform adobe PDF reader 控件相关的知识,希望对你有一定的参考价值。
C#winform adobe PDF reader 控件显示了pdf的内容,我现在想对这个内容进行操作,应该怎么做呢?比如说我要把每一页的页码去掉,然后截取其中的一段文字内容显示到textbox里面。在AxAcroPDF这个类里面没有找到gettext()这样的方法。。。求赐教,本人菜鸟
private static string GetText(AcroPDDoc pdDoc)AcroPDPage page;
int pages = pdDoc.GetNumPages();
string pageText = "";
for (int i = 0; i < pages; i++)
page = (AcroPDPage)pdDoc.AcquirePage(i);
object jso, jsNumWords, jsWord;
List<string> words = new List<string>();
try
jso = pdDoc.GetJSObject();
if (jso != null)
object[] args = new object[] i ;
jsNumWords = jso.GetType().InvokeMember("getPageNumWords", BindingFlags.InvokeMethod, null, jso, args, null);
int numWords = Int32.Parse(jsNumWords.ToString());
for (int j = 0; j <= numWords; j++)
object[] argsj = new object[] i, j, false ;
jsWord = jso.GetType().InvokeMember("getPageNthWord", BindingFlags.InvokeMethod, null, jso, argsj, null);
words.Add((string)jsWord);
foreach (string word in words)
pageText += word;
catch
return pageText;
追问
你好,这个需要添加什么引用呢?我添加了这两个
using AxAcroPDFLib;
using AcroPDFLib;
没有你这里的AcroPDDoc类型和BindingFlags
using Acrobat;
追问我添加了组件,也用了引用了,但是运行时报了一个错误,帮忙看下是什么问题,谢谢!
检索 COM 类工厂中 CLSID 为 72498821-3203-101B-B02E-04021C009402 的组件失败,原因是出现以下错误: 80040154 没有注册类别 (异常来自 HRESULT:0x80040154 (REGDB_E_CLASSNOTREG))。
C# 基础— 解决 "winForm 引用 Adobe PDF Reader控件不显示pdf 文件" 问题
前言 |
公司的CS 终端需要显示 PDF 文件 ,在换用了“Adobe PDF Reader” 这个控件后,运行程序不报错,窗体控件区显示一片空白,PDF 文件就是不显示,这是怎么回事呢?
正文 |
一 、原因一步步排除,先来看是不是按照教程引用的控件:
1、下载 Adobe PDF Reader 安装包
2、按照提示进行安装
3、打开VS2012 程序 → 工具箱→右击→选择项→ com 组件
4、这时候工具箱中应该有控件了,再查看引用中是不是多了两个引用
5、如果这两个都有的话,那就接着往下看
二、代码写的有问题
为什么PDF 文件不显示呢? 还有两个原因: pdf 文件的路径不存在;代码有bug !
看了一遍文件,路径对着呢;再来看代码:
private void frmTest_Load(object sender, EventArgs e)
//加载方式一
axAcroPDF1.LoadFile(@"C:\\Users\\Ting\\Desktop\\The Little Prince (EN).pdf");
//加载方式二
axAcroPDF1.src = "C:\\\\Users\\\\Ting\\\\Desktop\\\\The Little Prince (EN).pdf";
百度了一下,代码没有问题,那就再接着往下看:
三、怀疑是系统的问题,软件的问题?
可能是软件的问题,没有正确安装? 版本不兼容? 让一旁的Peter 和 Flip 大侠帮忙装了一下,还是不行;俗话说: 小事重装,大事重启 ,在百度了几番没有解决后,我,我,我选择了找老大帮忙。
四 、程序的运行平台问题
老大很快就解决了,佩服的不行;
将客户端的目标平台改成了 “x86”。
总结 |
通过这件事情,觉得还有很多很多的地方需要提高,检索能力,排错速度,思考问题的方式等,小树成长中,需要更多的阳光和养分,更需要扎根!
以上是关于C#winform adobe PDF reader 控件的主要内容,如果未能解决你的问题,请参考以下文章
C# 基础— 解决 "winForm 引用 Adobe PDF Reader控件不显示pdf 文件" 问题
在C#winform窗体中,放入一控件axAcroPDF1,
Word转不了PDF文件,提示PDFMaker文件遗失? word 是2003,pdf是Adobe Acrobat 8.0 !