首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >jsPDF调整文本行间距

jsPDF调整文本行间距
EN

Stack Overflow用户
提问于 2013-08-30 07:04:13
回答 2查看 12.7K关注 0票数 6

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

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2014-01-20 04:35:53

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

代码语言:javascript
运行
复制
        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'
        );

将上述各行更改为

代码语言:javascript
运行
复制
                // (activeFontSize * lineHeightProportion) + ' TL\n' + // line spacing
                (activeFontSize * this.lineHeightProportion) + ' TL\n' + // line spacing

并设置变量:

代码语言:javascript
运行
复制
pdf = new jsPDF("portrait", "in", "letter");
pdf.lineHeightProportion = 2;

应该能行得通。

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

票数 5
EN

Stack Overflow用户

发布于 2016-05-24 18:59:40

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

代码语言:javascript
运行
复制
file = new jsPDF({orientation: "p", lineHeight: 1.5)})

从jsPDF代码(function jsPDF(方向,单位,格式,compressPdf)):

代码语言:javascript
运行
复制
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
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18522323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档