我目前正在通过html2canvas将div的内容转换为png,但是使用scale:5或dpi:等对随后的图像质量没有任何影响。这是html2canvas的结果,因为我在pdfcon((函数期间附加了画布,并且它的:)非常模糊。我已经在互联网上寻找答案无济于事,任何帮助将不胜感激:)。(我也在使用鹅毛笔编辑器(
.HTML:
<div id="editorOne" class="pdf-convert ql-container ql-snow">
<div id="specialEdit" class="ql-editor" data-gramm="false" contenteditable="false">
<?php echo stripslashes($newClean); ?>
</div>
</div>
<button onclick="pdfcon()">Save Pdf</button>
.JS:
function pdfcon() {
html2canvas($("#editorOne"), {
scale: 5,
onrendered: function (canvas) {
document.body.appendChild(canvas);
var img = canvas.toDataURL("png");
var doc = new jsPDF("p", "mm", "a4");
var width = doc.internal.pageSize.getWidth();
var height = doc.internal.pageSize.getHeight();
doc.addImage(img, 'PNG', 0, 0, width, height);
doc.save('testing.pdf');
}
})
};
你可以给它一个更好的质量。在html2canvas中,您的质量级别为0-4。
您必须将其作为参数添加到对象中。
html2canvas($("#editorOne"), {
quality: 4,
scale: 5,
但请注意,质量等级 4 使 pdf 文件的大小约为 60mb。最佳选择是使用质量级别 1 或 2。