在jspdf.debug.js中更改默认pdf页面宽度和字体大小的位置?

时间:2014-04-16 08:31:57

标签: javascript jquery html jspdf

我需要在jspdf.debug.js中更改默认的pdf页面宽度和字体大小

在jspdf.debug.js中更改默认值的位置和方式?

4 个答案:

答案 0 :(得分:59)

除了使用其中一种默认格式外,您还可以在指定的单位中指定所需的任何尺寸。

例如:

// Document of 210mm wide and 297mm high
new jsPDF('p', 'mm', [297, 210]);
// Document of 297mm wide and 210mm high
new jsPDF('l', 'mm', [297, 210]);
// Document of 5 inch width and 3 inch high
new jsPDF('l', 'in', [3, 5]);

构造函数的第3个参数可以采用维数的数组。然而,它们与宽度和高度不对应,而是长边和短边(或翻转)。

您的第一个参数(landscapeportrait)决定了宽度和高度。

在GitHub上的源代码中,您可以看到supported units (relative proportions to pt),还可以看到默认的page formats (with their sizes in pt)

答案 1 :(得分:19)

来自documentation page

设置页面类型传递构造函数中的值

  

jsPDF(orientation, unit, format)创建新的jsPDF文档对象

     

实例参数:

     

方向其中一个"肖像"或"风景" (或快捷键" p"(默认)," l")

     

单位指定坐标时使用的测量单位。其中一个" pt" (分)," mm" (默认)," cm"," in"

     

格式' a3',' a4' (默认),' A5' '信' '法律'

设置字体大小

  

setFontSize(size)

     

设置即将发布的文本元素的字体大小。

     

参数:

     

{Number} size以磅为单位的字体大小。

答案 2 :(得分:0)

对于任何试图对此做出反应的人。有细微的差别。

// Document of 8.5 inch width and 11 inch high
new jsPDF('p', 'in', [612, 792]);

// Document of 8.5 inch width and 11 inch high
new jsPDF({
        orientation: 'p', 
        unit: 'in', 
        format: [612, 792]
});

当我尝试@Aidiakapi解决方案时,页面很小。对于不同的尺寸,请以英寸* 72为单位获取所需尺寸。例如,我想要8.5,所以8.5 * 72 = 612。 这是针对jspdf@1.5.3。

答案 3 :(得分:0)

我的情况是打印水平(横向)摘要部分-因此:

}).then((canvas) => {
  const img = canvas.toDataURL('image/jpg');
  new jsPDF({
        orientation: 'l', // landscape
        unit: 'pt', // points, pixels won't work properly
        format: [canvas.width, canvas.height] // set needed dimensions for any element
  });
  pdf.addImage(img, 'JPEG', 0, 0, canvas.width, canvas.height);
  pdf.save('your-filename.pdf');
});