我试图弄清楚如何用jsPDF .html()
方法调整HTML元素的大小。
我尝试使用下面的代码,但是width
选项似乎没有对输出进行任何更改。
我只是假设width
是.html()
的一个选项,因为不幸的是,到目前为止,这个方法还没有文档,人们应该猜测它是从代码中。
而且,在我看来,它应该接受html2canvas选项的选择,这就是我尝试使用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'));
}
});
#my-table
<table>
<tr>
<td><img src="image1.jpeg"></td>
</tr>
<tr>
<td><img src="image2.jpeg"></td>
</tr>
...
</table>
发布于 2019-02-23 03:15:30
将选项传递给html2canvas:
pdf.html(legend, {
html2canvas: {
// insert html2canvas options here, e.g.
width: 200
},
callback: function () {
// ...
}
});
对我来说,scale
选项可以很好地调整大小。您可以检索默认页面维度在来源中列出来计算所需的缩放因子。
发布于 2020-10-03 10:25:24
我没有找到调整HTML对象大小的方法。相反,您可以将测量单元从mm (默认)更改为pt。这将把所有尺寸从原来的1/3减少到大约1/3。例如:
doc = new jsPDF('portrait', 'pt', 'a4');
重要:任何其他对象(如文本、行等)也会在大小和位置上减少。所以要小心。
发布于 2019-02-21 02:27:47
我不知道jspdf到底是怎么回事,但你好像错过了拼写
var legend = document.getElementsById("my-table");
这里。
var legend = document.getElementById("my-table");
也许,您可以通过css或style属性调整这些表的大小。
<table style="width:200;">
<tr>
<td><img src="image1.jpeg"></td>
</tr>
<tr>
<td><img src="image2.jpeg"></td>
</tr>
...
</table>
使用css
#my-table {
width:200;
}
https://stackoverflow.com/questions/54804292
复制相似问题