Javascript 反应-html2canvas和JS-PDF按钮单击下载模态元素
看看我的代码,我已经尝试了所有关于jsPDF和html2canvas以及React PDF的StackOverflow链接; 还尝试了自定义高度和宽度 但是 我的页面模式高度是2353,宽度是900,太高了,我知道,但我自己无法管理。有人帮忙吗 这是我的密码:Javascript 反应-html2canvas和JS-PDF按钮单击下载模态元素,javascript,reactjs,react-redux,jspdf,html2canvas,Javascript,Reactjs,React Redux,Jspdf,Html2canvas,看看我的代码,我已经尝试了所有关于jsPDF和html2canvas以及React PDF的StackOverflow链接; 还尝试了自定义高度和宽度 但是 我的页面模式高度是2353,宽度是900,太高了,我知道,但我自己无法管理。有人帮忙吗 这是我的密码: html2canvas(document.querySelector("#addCustomerData"), { // height: document.querySelector("#add
html2canvas(document.querySelector("#addCustomerData"), {
// height: document.querySelector("#addCustomerData").offsetHeight,
// width: document.querySelector("#addCustomerData").offsetWidth + 200,
allowTaint: true,
}).then((canvas) => {
var imgData = canvas.toDataURL("image/png");
canvas.height = 2353;
canvas.width = 900;
// var imgWidth = 510;
var imgWidth = 210;
var pageHeight = 295;
// var pageHeight = 595;
console.log(canvas.height);
console.log(canvas.width);
// var imgHeight = (canvas.height * imgWidth) / canvas.width + 962;
var imgHeight = (canvas.height * imgWidth) / canvas.width + 350;
console.log(imgHeight);
var heightLeft = imgHeight;
var doc = new jsPDF("p", "mm");
var position = 0;
doc.addImage(imgData, "PNG", 0, position, imgWidth, imgHeight);
heightLeft -= pageHeight;
while (heightLeft >= 0) {
position = heightLeft - imgHeight;
doc.addPage();
doc.addImage(imgData, "PNG", 0, position, imgWidth, imgHeight);
heightLeft -= pageHeight;
}
doc.save("test.pdf");
});
还记录整个系统的值:
console.log(
"height: ",
document.getElementById("addCustomerData").offsetHeight
);
console.log(
"width: ",
document.getElementById("addCustomerData").offsetWidth
);
正如我所说,高度是:2353
宽度:900