我正在尝试从我的流星动力网站创建一个页面的pdf。该页面包含相当多的样式和一些d3图表。
我添加了chipcastledotcom:jspdf
和new3rs:html2canvas
来完成我的目标。我的计划是使用jsPDF的.addHTML()函数将非图表html添加到pdf中。我的问题是,除非我传入document.body作为.addHTML()
的来源,否则渲染的元素会在pdf中被涂黑。使用document.body我能够在网页上看到当前可查看的资料,但没有其他内容(该页面有相当多的内容,需要滚动)。 jsPDF中是否存在某些复杂程度的支持w.r.t.到网页布局/样式?
更重要的是,是否有修复/解决方法?
这是一个jsfiddle(完美地运作),它展示了我想要完成的任务:https://jsfiddle.net/jdcast/tqfdkusp/。
要清楚,小提琴中的.addHTML()
效果很好:
doc.addHTML(document.getElementById('div1'), 0, 0, function() {
console.log('callback');
doc.save('sampler-file.pdf');
});
但是,在我的网站代码中逐字逐句,我必须使用以下内容查看ISN' T黑掉的输出:
doc.addHTML(document.body, 0, 0, function() {
console.log('callback');
doc.save('sampler-file.pdf');
});
另请注意,我使用过jsPDF' .text()函数,它似乎表现得很好,所以我觉得我没有错误地安装它。
谢谢!