我需要打印通过 JavaScript 中的 GET 请求获得的 PDF 文件。为了进行实际打印,我使用PrintJS,它可用于从特定的 PDF URL 打印。
我的代码看起来像这样:
printChart() {
var req = new XMLHttpRequest();
req.open('GET', 'http://localhost:8080/test.pdf', true);
req.responseType = 'blob';
req.onload = function (event) {
var blob = req.response;
var blobURL = window.URL.createObjectURL(blob);
printJS(blobURL);
};
req.send();
}
这在 Chrome 中运行良好,但问题是它不会在 Internet Explorer 中打印任何内容(在 IE 11 中测试)。显然,window.URL.createObjectURL 在 IE 中无法正常工作。
虽然 IE 中有一个msSaveOrOpenBlob方法,但这对我帮助不大,因为我需要打印 PDF,而不是保存它。