jsPDF无法创建正确的PDF

时间:2015-05-28 13:47:25

标签: javascript php jquery pdf jspdf

我有一张表格如下:

enter image description here

我正在使用以下代码尝试在有人点击PDF按钮时生成PDF。

<script>
    var doc = new jsPDF();

    $('#pdf').click(function () {
        var specialElementHandlers = {
            '#editor': function (element, renderer) {
                return true;
            }
        };

        doc.fromHTML($('#pdfcontent').html(), 15, 15, {
            'width': 170,
            'elementHandlers': specialElementHandlers
        });

        doc.save('sample-file.pdf');
    });
</script>

生成的PDF看起来像:

enter image description here

如何让PDF成为网站的镜像?

2 个答案:

答案 0 :(得分:0)

您不应期望jsPDF镜像HTML页面的内容,因为它解析HTML以将内容重新创建为PDF并且HTML解析器处于早期阶段(如official web-site所述)。

我建议使用jsPDFTablePlugin,它可以将输入作为带有数据的对象数组,并将它们作为表格绘制成PDF格式。

答案 1 :(得分:0)

我强烈建议切换到服务器端PDF生成。 PhantomJS将为你提供几乎像素完美的PDF svg和canvas支持,所有元素仍将保留为矢量!你应该试一试。

对于客户端PDF生成器,例如提到的jsPDF,你非常有限,最终结果将远离你期望的结果。