6

在 jsPDF 的文档中,我找不到增加文本行之间空间的方法或函数。我想知道知识渊博的人是否会点头介意分享他/她的一些知识:)。非常感谢。

4

2 回答 2

7

您还可以在 jsPDF 构造函数中添加参数:

file = new jsPDF({orientation: "p", lineHeight: 1.5)})

来自 jsPDF 代码(函数 jsPDF(orientation, unit, format, compressPdf)):

var options = {};

if (typeof orientation === 'object') {
    options = orientation;

    orientation = options.orientation;
    unit = options.unit || unit;
    format = options.format || format;
    compressPdf = options.compress || options.compressPdf || compressPdf;
}

// Default options
unit = unit || 'mm';
format = format || 'a4';
orientation = ('' + (orientation || 'P')).toLowerCase();

var format_as_string = ('' + format).toLowerCase(),
    compress = !!compressPdf && typeof Uint8Array === 'function',
    textColor = options.textColor || '0 g',
    drawColor = options.drawColor || '0 G',
    activeFontSize = options.fontSize || 16,
    lineHeightProportion = options.lineHeight || 1.15,
    lineWidth = options.lineWidth || 0.200025; // 2mm
于 2016-05-24T10:59:39.983 回答
5

API.text 的输出使用 lineHeightProportion 确定行高:

        out(
            'BT\n/' +
                activeFontKey + ' ' + activeFontSize + ' Tf\n' + // font face, style, size
                (activeFontSize * lineHeightProportion) + ' TL\n' + // line spacing
                textColor +
                '\n' + f2(x * k) + ' ' + f2((pageHeight - y) * k) + ' Td\n(' +
                str +
                ') Tj\nET'
        );

将上述相应行更改为

                // (activeFontSize * lineHeightProportion) + ' TL\n' + // line spacing
                (activeFontSize * this.lineHeightProportion) + ' TL\n' + // line spacing

并设置变量:

pdf = new jsPDF("portrait", "in", "letter");
pdf.lineHeightProportion = 2;

应该做的伎俩。

https://github.com/MrRio/jsPDF/pull/167

于 2014-01-19T20:35:52.630 回答