繁体   English   中英

在WebBrowser控件上显示PDF不起作用

[英]Displaying PDF on WebBrowser Control not working

我有一个test.pdf,我想在我的表单中显示它。

我的代码非常简单:

public Form1()
        {
            InitializeComponent();
            this.wbPdf.Navigate(@"file:///<fullpath>\test.pdf#toolbar=0");
        }

它不起作用。 它显示了一个带有“X”的白页。

但如果我这样做:

this.wbPdf.Navigate(@"file:///<fullpath>\test.pdf#toolbar=0", true);

IE打开了,它显示了我的pdf。 当然,我试图在第二个参数中使用false ,但它不起作用。

此外,如果我尝试做类似的事情

this.wbPdf.Navigate(@"http://www.google.com");

它向我展示了google,所以我认为Web Browser Control的配置没有任何问题

有任何想法吗? 我不能安装Acrobat Reader,所以使用ActiveX组件不是一个选项(同样,这个项目是在x64 ,我已经读过这个组件在x64不能很好地x64 )。

我想显示pdf仅用于在表单内查看,而不是在另一个窗口中查看。

AFAIK,WinForms中的Web浏览器控件依赖于默认的PDF阅读器(通常是Acrobat Reader)来显示PDF文件。 如果您需要显示PDF文件而无需安装任何其他软件,则可能需要在应用程序中使用PDF呈现库。 PDF渲染库的一些示例:

  • MuPDF带有.net包装器的GPL /商业查看器,您需要商业许可证才能用于商业闭源应用程序。
  • Amyuni PDF Creator .Net用于编辑或显示PDF文件的商业库。 免责声明:我目前是图书馆的开发人员。

另一种选择是创建一个本地HTML5页面,使用项目pdf.js呈现PDF文件,然后将该页面嵌入Web浏览器控件。 但这仅适用于IE 9.0或更高版本的Windows系统

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM