首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用jspdf .html()方法导出到pdf之前调整html的大小

使用jspdf .html()方法导出到pdf之前调整html的大小
EN

Stack Overflow用户
提问于 2019-02-21 10:03:29
回答 3查看 13K关注 0票数 2

我试图弄清楚如何用jsPDF .html()方法调整HTML元素的大小。

我尝试使用下面的代码,但是width选项似乎没有对输出进行任何更改。

我只是假设width.html()的一个选项,因为不幸的是,到目前为止,这个方法还没有文档,人们应该猜测它是从代码中

而且,在我看来,它应该接受html2canvas选项的选择,这就是我尝试使用width的原因。

总之,密码是:

代码语言:javascript
运行
复制
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

代码语言:javascript
运行
复制
<table>
    <tr>
        <td><img src="image1.jpeg"></td>
    </tr>
    <tr>
        <td><img src="image2.jpeg"></td>
    </tr>
    ...
</table>
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2019-02-23 11:15:30

将选项传递给html2canvas:

代码语言:javascript
运行
复制
pdf.html(legend, {
    html2canvas: {
        // insert html2canvas options here, e.g.
        width: 200
    },
    callback: function () {
        // ...
    }
});

对我来说,scale选项可以很好地调整大小。您可以检索默认页面维度在来源中列出来计算所需的缩放因子。

票数 4
EN

Stack Overflow用户

发布于 2020-10-03 18:25:24

我没有找到调整HTML对象大小的方法。相反,您可以将测量单元从mm (默认)更改为pt。这将把所有尺寸从原来的1/3减少到大约1/3。例如:

代码语言:javascript
运行
复制
doc = new jsPDF('portrait', 'pt', 'a4');

重要:任何其他对象(如文本、行等)也会在大小和位置上减少。所以要小心。

票数 3
EN

Stack Overflow用户

发布于 2019-02-21 10:27:47

我不知道jspdf到底是怎么回事,但你好像错过了拼写

代码语言:javascript
运行
复制
var legend = document.getElementsById("my-table");

这里。

代码语言:javascript
运行
复制
var legend = document.getElementById("my-table");

也许,您可以通过css或style属性调整这些表的大小。

代码语言:javascript
运行
复制
<table style="width:200;">
    <tr>
        <td><img src="image1.jpeg"></td>
    </tr>
    <tr>
        <td><img src="image2.jpeg"></td>
    </tr>
    ...
</table>

使用css

代码语言:javascript
运行
复制
#my-table {
 width:200;
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54804292

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档