有些PDF文件不会在Chrome浏览器中呈现,但在Firefox中会显示得很好。如果直接发送,所有文件在所有浏览器中都会显示良好。
<object id="content-view" :data="content_view.base64" type="application/pdf"></object>令人困惑的是,问题只是针对某些文件,而不是所有文件。文件存储在一个不公开的文件夹中,这就是为什么它们作为base64供用户查看的原因。

我使用在线base64解码器测试了有问题的文件,并得到了相同的结果。在FF中呈现,而不是在Chrome中呈现。
我不能分享任何PDF文件。它们都来自同一个来源,从同一个设备扫描,PDF版本1.4,4页。
我试过:
发布于 2020-04-25 09:49:40
发布于 2020-04-26 14:35:20
发布于 2022-08-08 20:33:47
我也有过同样的问题。我注意到一些超过1MB的PDF没有加载。
我在这里找到了一个解决方案:使用javascript打开base64编码的pdf文件。文件大小大于2MB的问题
需要将Base64字符串更改为BLOB。然后创建一个用于iframe的URL。
以下是代码:
base64PDFToBlobUrl( base64 ) {
const binStr = atob( base64 );
const len = binStr.length;
const arr = new Uint8Array(len);
for (let i = 0; i < len; i++) {
arr[ i ] = binStr.charCodeAt( i );
}
const blob = new Blob( [ arr ], { type: 'application/pdf' } );
const url = URL.createObjectURL( blob );
return url;
}这将返回一个url,您可以将其放入您的iframe、embed或object src中。这样,您仍然可以在页面中加载PDF,而无需在其他选项卡中打开它。
https://stackoverflow.com/questions/61223770
复制相似问题