gpt4 book ai didi

javascript - 如何使用 jsPDF 创建输出的 pdf, 'exactly' 作为 window.print() 命令给出?

转载 作者:行者123 更新时间:2023-11-28 07:58:01 25 4
gpt4 key购买 nike

如何使用 jsPDF 创建输出的 pdf,“完全”如 window.print() 命令给出的那样?

我必须创建一个“div”元素的pdf,我尝试使用jsPDF。但我得到的输出有很多额外的项目符号和困惑的编号。但我在屏幕上看到的是格式良好的“div”,我可以通过使用 window.print() 准确地打印它。

我唯一的提示是,我希望为无法将打印选项更改为“保存为 pdf”的用户提供另一种将输出保存为 pdf 的选项。

    var pdf = new jsPDF('p', 'pt', 'letter');
var source = $('#content')[0]; //content has the survey with lot of linked list elements and various formatted text
//I tried all kind of formatting on 'source' to make it right... but its not possible to keep the form as it is what it looks on screen
margins = {
top: 80,
bottom: 60,
left: 40,
width: 522
};
pdf.fromHTML(
source, // HTML string or DOM elem ref.
margins.left, // x coord
margins.top, {// y coord
'width': margins.width, // max width of content on PDF
//'elementHandlers': specialElementHandlers
},
function (dispose) {
// dispose: object with X, Y of the last line add to the PDF
// this allow the insertion of new lines after html
pdf.save('Disclosure' + '@DateTime.Now' + '.pdf');
}
, margins);

那么,有没有办法将 window.print() 之后的输出保存为 PDF 格式?

最佳答案

尝试一下:

var pdf = new jsPDF('p', 'pt', 'letter');
var source = $('#content')[0];
var options = { background: '#fff' };

pdf.addHTML(source, options, function()
{
pdf.save('Disclosure' + '@DateTime.Now' + '.pdf');
});

(如果您要处理单个元素,例如您提到的 div,则需要背景选项,否则您将获得透明/黑色背景)

另请注意,您需要 html2canvas为了这个工作。

关于javascript - 如何使用 jsPDF 创建输出的 pdf, 'exactly' 作为 window.print() 命令给出?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25828502/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com