在 C# WebApp 中显示 PDF 文档时出错

Posted

技术标签:

【中文标题】在 C# WebApp 中显示 PDF 文档时出错【英文标题】:Error displaying PDF document in C# WebApp 【发布时间】:2021-08-01 02:30:00 【问题描述】:

我想在我的 Web 中显示从 base64 生成的文档,但抛出此错误并且不显示任何内容。控制器中没有错误,此消息显示在浏览器(Chrome)中:

Uncaught Error: Assertion failed
    at assert (pdf_viewer_wrapper.js:5)
    at Viewport.getPageAtY_ (pdf_viewer_wrapper.js:16)
    at Viewport.getMostVisiblePage (pdf_viewer_wrapper.js:16)
    at htmlElement.updateUIForViewportChange (pdf_viewer_wrapper.js:2241)
    at HTMLElement.viewportChanged_ (pdf_viewer_wrapper.js:2091)
    at Viewport.viewportChangedCallback_ (pdf_viewer_wrapper.js:2091)
    at Viewport.updateViewport_ (pdf_viewer_wrapper.js:16)
    at pdf_viewer_wrapper.js:16
    at Viewport.mightZoom_ (pdf_viewer_wrapper.js:16)
    at Viewport.fitToNone (pdf_viewer_wrapper.js:16)

文件框架: <iframe id="framePDF2" frameborder="0" style="width: 100%; height:900px;" src=""></iframe>

JQuery 从控制器获取base64:

success: function (result) 
     $('#framePDF2').attr('src', "data:application/pdf;base64," + result.pdf);

【问题讨论】:

您确定它是正确编码的 PDF 的 base64 字符串吗? @pcisrra76,正如其他人所说,我们无法知道您的 base64 字符串是否正确。您最好提供与如何获取base64字符串相关的代码。 【参考方案1】:

我没有答案,但几周以来,我在 Chrome 浏览器(Versie 90.0.4430.212(Officiële build)(64 位,Windows 10)的网站上遇到了同样的问题,网页不是t 之前更改并运行良好。在 Edge 中没有问题。对我来说,这似乎是一个 Chrome 错误

【讨论】:

以上是关于在 C# WebApp 中显示 PDF 文档时出错的主要内容,如果未能解决你的问题,请参考以下文章

在c#中使用word为啥在关闭时总是显示“另存为”对话框

C# 将Word转为PDF时,设置PDF文档保护

C# 将Excel转为PDF时设置内容适应页面宽度

在 UIWebview 中打开 pdf 时出错

使用jquery mvc 4上传pdf文件

如何使用 C# 合并包含所有者密码的 PDF 文档