为什么window.print()和/或google.script.host.close()会使html2pdf保存一个



我正在做这项工作,将pdf保存到Google Drive文件夹中,但只有当我注释掉window.print()google.script.host.close()时,它才有效,但这些都是重要的步骤。

我怎么能把它们放在照片里?

function savefile() {
var element = document.getElementById("pgBody");
var poNumber = document.getElementById('fabricPo').value;
var supplier = document.getElementById('selectSupplier').value;
let fileName = supplier + " - " + poNumber + ".pdf";
var opt = {
margin: [2, 5, 2, 5], //top, left, bottom, right
filename: fileName,
image: {
type: "jpeg",
quality: 0.98,
},
html2canvas: {
scale: 1,
},
jsPDF: {
unit: "mm",
orientation: "landscape",
},
};
//window.print();
html2pdf()
.set(opt)
.from(element)
.outputPdf()
.then(function(p) {
let file = btoa(p);
google.script.run.savePdf(file, fileName);
//google.script.host.close();
});
}

感谢你的帮助!

这样试试:

function savefile() {
var element = document.getElementById("pgBody");
var poNumber = document.getElementById('fabricPo').value;
var supplier = document.getElementById('selectSupplier').value;
let fileName = supplier + " - " + poNumber + ".pdf";
var opt = {
margin: [2, 5, 2, 5], //top, left, bottom, right
filename: fileName,
image: {
type: "jpeg",
quality: 0.98,
},
html2canvas: {
scale: 1,
},
jsPDF: {
unit: "mm",
orientation: "landscape",
},
};
html2pdf()
.set(opt)
.from(element)
.outputPdf()
.then(function(p) {
let file = btoa(p);
google.script.run
.withSuccessHandler(() => {
window.print();
google.script.host.close();
})
.savePdf(file, fileName);

});

最新更新