javascript - jsPDF addHTML 将低质量图像导出为 PDF

标签 javascript pdf jspdf

过去 2 天搜索的简单问题,但未找到解决方案 我正在使用 jsPDF 的这个 addHTML api 将 html 转换为 pdf

$('#loadPdf').on('click', function() {
        var pdf = new jsPDF('p', 'in', 'a4');
        pdf.addHTML($('#complete')[0], function() {
            pdf.save('new.pdf');
            pdf.output('datauri');
        });
    });

这是生成模糊图像 pdf 文本显示模糊。我搜索了很多找到一些链接(在下面分享)但没有得到答案。

html2canvas-generates-blurry-images

addHTML image quality

jspdf and addHTML / blurry font

有什么方法可以获得高质量的图像pdf。如果我不使用 addHTML api 而使用任何其他 API,则图像不会以 pdf 格式显示。请帮忙

最佳答案

看起来很多人仍在使用 pdf.addHTML() 并且存在同样的低质量问题。 pdf.addHTML() 实际上是deprecated现在。新的矢量支持 API pdf.html() 工作得更好。查看他们的 sample为自己。这是使用 jsPDF 和 html2canvas 1.0.0-alpha.11 的工作代码:

<script src="https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.5.3/jspdf.debug.js" 
        integrity="sha384-NaWTHo/8YCBYJ59830LTz/P4aQZK1sS0SneOgAvhsIl3zBu8r9RevNg5lHCHAuQ/"
        crossorigin="anonymous">
</script>
<script src="https://html2canvas.hertzen.com/dist/html2canvas.min.js"></script>
<script>
    function download() {
        let pdf = new jsPDF('l', 'pt', 'a4');
        pdf.html(document.getElementById('id'), {
            callback: function () {
                //pdf.save('test.pdf');
                window.open(pdf.output('bloburl')); // to debug
            }
        });
    }
</script>

关于javascript - jsPDF addHTML 将低质量图像导出为 PDF,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29166163/

相关文章:

javascript - 如何测量 Javascript 对象的大小

javascript - 下载 csv 文件在 Internet Explorer 11 中不起作用,它将页面重定向到另一个页面(无法显示网页)

flutter - 如何在 Flutter 中从 Web 加载和呈现 PDF 文件

Angular- jsPDF 警告、意外 token 和 jsPDF.fromHTML 不是函数

javascript - 将 php 文件与 AJAX 一起使用的最佳实践

javascript - Facebook - 共享链接无法正常工作 - javascript/jquery

Excel PDF转换-超链接公式不可点击

javascript - 为什么从 PDF 复制时缺少格式

javascript - 以 PDF 格式下载图表和表格

javascript - JSPDF 保存在本地系统上,但我想将它保存在服务器上