javascript - 使用 jspdf .html() 方法在导出为 pdf 之前调整 html 的大小
问题描述
我试图弄清楚如何使用 jsPDF.html()
方法调整 HTML 元素的大小。
我尝试使用下面的代码,但该width
选项似乎没有对输出进行任何更改。
我只是假设width
这是一个选项,.html()
不幸的是,截至目前,该方法没有文档,应该从代码中猜测它。
此外,在我看来,它应该从html2canvas options中选择,这就是我尝试使用width
.
无论如何,代码:
var legend = document.getElementById("my-table");
var pdf = new jsPDF(orientation, undefined, format);
pdf.html(legend, {
width: 200,
callback: function () {
window.open(pdf.output('bloburl'));
}
});
#我的表
<table>
<tr>
<td><img src="image1.jpeg"></td>
</tr>
<tr>
<td><img src="image2.jpeg"></td>
</tr>
...
</table>
解决方案
将选项传递给 html2canvas:
pdf.html(legend, {
html2canvas: {
// insert html2canvas options here, e.g.
width: 200
},
callback: function () {
// ...
}
});
对我来说,该选项scale
可以很好地调整大小。您可以检索源中列出的默认页面尺寸来计算所需的比例因子。
推荐阅读
- docker - 当 docker 容器使用主机挂载的卷启动时,磁盘 I/O 是多少?如何减少它?
- express - 即使邮递员正在为同一个端点工作,Axios 也会抛出连接错误
- php - 如何访问 iframe 中的网站并搜索内容
- r - 如何散点图时间序列?
- python - dtype 对象无法转换为浮点 matplotlib
- excel - 通过查找标题“电子邮件”并将电子邮件发送到匹配标题下方的第一个单元格,Excel VBA 发送到电子邮件地址
- multithreading - spring batch 多线程阅读器处理器编写器
- python - JSON 请求将数据返回到浏览器但不返回刮板
- java - 如何在spring boot中从实体自动生成表到shema
- java - 使用 jdbc 时如何使用时区保存正确的日期时间