如何在jspdf autoTable的beforePageContent中使用lineBreak

4
我在我的程序中使用了overFlow : linebreak。它运行良好,这是我的代码:

styles: {
                    fillStyle: 'DF',
                       overflow: 'linebreak',
                       columnWidth: 110,
                       lineWidth: 2,
                       lineColor: [85, 51, 27]
                           
                     }

但这并没有反映在beforePageContent中,下面是代码:

beforePageContent: function(data) {
                      doc.setFontSize(12);
                      doc.setFont("courier");
                      doc.text("Process Name :",20 ,15);
                      doc.setFontStyle('bold');
                      //doc.overflow('linebreak');
                         doc.setFontStyle('normal');
                       doc.text("Description :"+sampData, 20, 30);
                         
                         
                     },

那么我如何在beforePageContent块中使用lineBreak呢?


@Simon Bengtsson,请帮我解决这个问题。 - Saravana Kumar
1个回答

11

overflow: linebreak; 样式仅适用于 jspdf-autotable。在你使用纯 jspdf 时需要使用 jspdf 方法。有两个函数可能会对你有帮助。第一个是 doc.getStringUnitWidth("hello"),第二个是 doc.splitTextToSize("A longer title that might be split", 50)

示例1:

var strArr = doc.splitTextToSize("A longer title that might be split", 50)
doc.text(strArr, 50, 50);

例子 2:

var str = "A longer title that /n is split";
doc.text(str, 50, 50);

你能把上面例子的链接放在这里吗,这样我可以得到更多的解释。 - Saravana Kumar
现在添加了两个示例,我快速搜索了一下,没有找到上述函数的任何参考资料。您可以测试它或检查jspdf源代码。 - Simon Bengtsson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接