渲染输出中多页/单页PDF的差异

时间:2019-03-28 07:37:48

标签: angular6 jspdf html2canvas

我正在使用JSPDF 1.4.1,HTML @ Canvas 1.0.0-alpha.12和Angular 6将报告导出为PDF,但是根据转换内容的大小,我遇到了渲染问题。

我成功地在两个方向上都创建了PDF,当创建一页PDF时,通过调整位置来创建多页PDF时,该页面呈现了很好的(清晰度为80%-85%)属性,但使用相同的addImage()方法,页面呈现的效果(清晰度提高+ -50%)

const div;
const options = {background: "white", height: div.clientHeight, width: div.clientWidth, letterRendering:true};

html2canvas(div, options).then((canvas) => {

var width = doc.internal.pageSize.getWidth();    
var height = doc.internal.pageSize.getHeight();
height = ratio * width;
var imgWidth = 208; 
var pageHeight = 295;  
var imgHeight = canvas.height * imgWidth / canvas.width;
var heightLeft = imgHeight;
var position = 2;

doc.addImage(imgData, 'PNG', 6, position, width-13, imgHeight, '', 'FAST');

heightLeft -= pageHeight;

while (heightLeft >= 0) {
position = heightLeft - imgHeight;
doc.addPage();
doc.addImage(imgData, 'PNG', 6, position+4, width-13, imgHeight, '', 'FAST');
heightLeft -= pageHeight;
}

doc.save(fileName);

我的问题是,无论需要渲染多少文件,还是增加文件大小,是否都可以保持清晰度不变?我知道这是在Alpha中,但是是否有任何成功或任何建议?

0 个答案:

没有答案