var newPDF = window.open(this.generatedPDF.output('bloburl'), '_blank');
newPDF.print();
此代码在 Chrome 中运行完美,但在 IE 中使用此代码时出现警告
你想允许这个网站在你的电脑上打开一个应用程序吗?
点击 YES ,我得到了这个
您将需要一个新的应用程序来打开 BLOB
IE 的可能解决方案是什么?
var newPDF = window.open(this.generatedPDF.output('bloburl'), '_blank');
newPDF.print();
此代码在 Chrome 中运行完美,但在 IE 中使用此代码时出现警告
你想允许这个网站在你的电脑上打开一个应用程序吗?
点击 YES ,我得到了这个
您将需要一个新的应用程序来打开 BLOB
IE 的可能解决方案是什么?
根据您的描述,我想您想在浏览器中显示 PDF 文件,然后打印。
据我所知,IE 11会阻止blob的显示,如果要显示它们,首先我们需要下载它,然后从本地查看。
所以,我建议你可以尝试参考下面的代码,在使用IE浏览器的时候先下载文件,然后打印,在使用其他浏览器的时候,你可以使用你的代码来打印它们:
// if Internet Explorer or Edge is used, download it.
if (window.navigator && window.navigator.msSaveOrOpenBlob) {
var byteCharacters = atob(result.document);
var byteNumbers = new Array(byteCharacters.length);
for (var i = 0; i < byteCharacters.length; i++) {
byteNumbers[i] = byteCharacters.charCodeAt(i);
}
var byteArray = new Uint8Array(byteNumbers);
var blob = new Blob([byteArray], {
type: 'application/pdf'
});
window.navigator.msSaveOrOpenBlob(blob, "output.pdf");
// for all other web browsers
} else {
//your code to print them
}
参考: