c#使用免费开源.net的pdf操作控件PdfiumViewer
记录自己在学习园里大神文章时遇到的问题,以备自己复习
文章原址:通过pdfiumviewer.dll实现pdf直接从流显示(效果不好)
https://www.cnblogs.com/mol1995/p/6078733.html
原文内容如下:
开源的pdfiumviewer.dll并不完整
需要不开源的pdfium.dll配合使用
引用只需添加pdfiumviewer.dll,但pdfium.dll必须跟它放在一个路径下
界面中添加控件:
pdfiumviewer.pdfviewer pdfviewer1 = new pdfiumviewer.pdfviewer();
pdfviewer1.location = new point(0, 24);
pdfviewer1.size = new size(300, 300);
pdfviewer1.dock = dockstyle.fill;
this.controls.add(pdfviewer1);
pdfviewer1.document = pdfdocument.load(@"d:\naip解压临时文件夹\2016-12p.pdf");
打开后只有另存、打印、放大、缩小菜单,没有旋转菜单,也不支持鼠标滚轮缩放。
实验过程:1. 首先在新建的项目 debug路径下,添加了一个other文件夹,并在里面添加了pdfiumviewer.dll和pdfium.dll
2.在编辑界面的引用中添加pdfiumviewer.dll,我引用时的路径,选择了other文件夹
3.在主窗体,添加一个按钮,将如上的代码复制进去,注意不要忘了 using pdfiumviewer;
pdfiumviewer.pdfviewer pdfviewer1 = new pdfiumviewer.pdfviewer();
pdfviewer1.location = new point(0, 24);
pdfviewer1.size = new size(300, 300);
pdfviewer1.dock = dockstyle.fill;
this.controls.add(pdfviewer1);
pdfviewer1.document = pdfdocument.load(@"d:\naip解压临时文件夹\2016-12p.pdf");
4.点击运行,出现报警
此时有点郁闷,我是放在一个路径了(other文件夹下),但是还是报警了,百度报警文本,借鉴了 文章 system.dllnotfoundexception:"无法加载dll"**.dll":找不到指定的模块 (https://www.cnblogs.com/johnson2580/p/12329877.html)中的内容,“非托管代码dll并没有在原dll的引用里面,所有将非托管代码拷贝到自己的debug目录下再重新生成”
5.测试通过
6.总结,
引用只需添加pdfiumviewer.dll,但pdfium.dll必须跟它放在一个路径下。哪里需要注意的,请大神们指点知识点!