【发布时间】:2020-11-21 01:26:14
【问题描述】:
我有一个返回格式为
的数据的API{ fileName: string, blob: Blob }[]
我想打印所有这些文件,所以我正在使用
_files.forEach((_fileInfo) => {
const blobUrl = URL.createObjectURL(_fileInfo.blob);
const oWindow = window.open(blobUrl, "print");
oWindow.print();
oWindow.close();
});
这会打开多个打印窗口,但在预览中会显示空白文档。
但是当我以 zip 格式下载所有这些文件时,它会下载正确的 PDF 文件。
// add files to zip
files.forEach((_fileInfo) => {
zip.file(_fileInfo.fileName, _fileInfo.blob);
});
// download and save
return zip.generateAsync({ type: "blob" }).then((content) => {
if (content) {
return saveAs(content, name);
}
});
-
可能是什么问题,
-
有没有办法在不打开多个窗口的情况下按顺序打印所有文档?
【问题讨论】:
-
它对单个文件是否正常工作,没有循环?
-
不,它在预览中显示空白文档
-
你能指定什么是
_files集合,例如你如何获得_fileInfo的值? -
@AlenaKastsiukavets,printJs 完成了这项工作,我的意思是现在它显示了正确的 PDF 预览,现在唯一的问题是合并 pdf,有什么方法可以单击打印多个 PDF 文件。跨度>
标签: javascript angular blob