javascript - HTML2Canvas 在 jspdf 上生成模糊图像
问题描述
当我在我的代码中使用 html2canvas 时,当我将它放到 jspdf 上时,它会生成一个模糊的图像。
比较图像:
HTML 格式
[![HTML 格式][1]][1]
生成的模糊图像
[![生成的模糊图像][2]][2]
分辨率在我正在从事的项目中至关重要,我在互联网上尝试了许多解决方案。
这是我的参考代码:
async function generatePDF() {
//A4 measures 210 × 297 millimeters or 8.27 × 11.69 inches. In PostScript, its dimensions are rounded off to 595 × 842 points
var doc = new jsPDF('l', 'mm', 'a4');
const width = 297;
document.getElementById("hidden").style.display = "block";
document.getElementById("hidden").style.width = (width + 100) + "mm";
var stringHTML = document.getElementById("hidden").getElementsByClassName("calendarBox");
for (var i = 0; i < stringHTML.length; i++) {
stringHTML[i].style.display = "block";
window.scrollTo(0, 0);
await html2canvas(stringHTML[i], {
useCORS: true,
width: 1800
}).then((canvas) => {
var imgData = canvas.toDataURL();
doc.addImage(imgData, 'PNG', 12, 10, width * 1.1, width * 0.65);
});
if (i + 1 != stringHTML.length) {
doc.addPage();
}
stringHTML[i].style.display = "none";
}
doc.save('Calendar.pdf');
document.getElementById("hidden").style.display = "none";
}
Please help. I've spent many hours trying to fix.
Thanks
[1]: https://i.stack.imgur.com/go1vD.png
[2]: https://i.stack.imgur.com/80h0k.png
[3]: https://i.stack.imgur.com/oZcnv.png
解决方案
推荐阅读
- reactjs - 当子组件是变量时反应传递道具
- git - Git:Ubuntu:Url 没有方案
- node.js - 将数据加载到我的 Mongo 数据库但意外的“O”
- swift - 从导航控制器滑动手势到常规
- c# - 在我的逻辑应用程序的天蓝色函数中将电子邮件正文转换为 JSON 对象
- api - 从 json 文件以编程方式将数据导入 Contentful
- bash - 如何在本地运行 go 二进制文件作为 Jenkins 管道的最后阶段?
- java - 如何通过命令行在不同的jdks/jre上编译和运行java程序?
- html - 为什么我的 html 页面没有下载这些文件?
- python-3.x - 带有IDE Microsoft Code的python中的configparser()问题