我试图在 pdfkit
中找到一种方法来使用粗体字体进行内联强调不幸的是,我找不到一种方法来改变字体而不强制换行(对于内联强调不好......)。
我正在尝试类似的事情:
pdf.text('Hello ', LEFT, 200).font(bold).text('World!');
但这会输出
您好
世界
我也在挖掘源头,但找不到任何阻止这种情况的选择。
任何人都有任何想法或解决方法来解决这个问题吗?
修改:
现在我能想到的只是一个丑陋的黑客看起来像这样:
pdf.text('Hello ', LEFT, 200).moveUp(1).font(bold).text('World!', {indent: pdf.widthOfString('Hello ')});
这是有效的,但远非灵活和可维护。
答案 0 :(得分:13)
基本上你需要用lineBreak:false,
设置选项pdf.text('Hello ', LEFT, 200, {
//here it is,
lineBreak : false
}).font(bold).text('World!');
这将使Hello not break行,所以下一个World将打印在同一行。
我发现了这个:
node_modules\pdfkit\js\mixins\text.js, line 130
pdfkit版本:0.2.6
答案 1 :(得分:5)
处理此问题的记录方法是继续。
pdf.font('Helvetica-Bold').text('Hello ', {
continued: true
}).font('Helvetica').text('World!');