获取pdf文件流
exoprtPdf(api, obj, type) {
api({
...obj,
userId: this.userId,
}).then((resp) => {
if (type == 1) {
this.saveFile(resp.data);
} else {
this.printFn(resp.data);
}
});
},
下载
saveFile(data) {
let blob = new Blob([data], {
type: "application/pdf",
});
let url = window.URL || window.webkitURL;
let fileURL = url.createObjectURL(blob);
let a = document.createElement("a");
a.href = fileURL;
a.download = "";
a.target = "_self";
a.click();
url.revokeObjectURL(fileURL);
},
打印
printFn(dataResult) {
var date = new Date().getTime();
var ifr = document.createElement("iframe");
ifr.style.frameborder = "no";
ifr.style.display = "none";
ifr.style.pageBreakBefore = "always";
ifr.setAttribute("id", "printPdf" + date);
ifr.setAttribute("name", "printPdf" + date);
ifr.src = window.URL.createObjectURL(dataResult);
document.body.appendChild(ifr);
this.doPrint("printPdf" + date);
window.URL.revokeObjectURL(ifr.src);
},
doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow;
setTimeout(() => {
ordonnance.print();
}, 100);
},