在 Edge/IE11 中显示 Blob PDF

Displaying Blob PDF in Edge/IE11

我有一个 Django 应用程序(我从中得到一些 html 作为客户端),以及一个需要显示的 base64 编码的 PDF。我尝试了多种方法,它们在 Chrome/Firefox.

中按预期工作

我正在使用 django,所以会有一些模板和一些 JavaScript。

pdf_preview_embed 是一个 div

嵌入数据 URL

<embed width=100% height=100% type="application/pdf" src="data:application/pdf;base64, {{ pdf }}"></embed>

不可接受的解决方案,因为它可能需要内联 megs 数据。在 Windows 7 下的 IE11 中工作,在 Windows 10 下的 Edge 和 IE11 上不工作。

嵌入 Blob

base64binary implementation

var blob = new Blob( [Base64Binary.decode(pdf)], {'type': 'application/pdf'} );
pdfURL = URL.createObjectURL( blob );
$('#pdf_preview_embed').html(
    '<embed width=100% height=100% type="application/pdf" src="'+pdfURL+'"></embed>'
);

在 Edge 和 IE11 中也不起作用。