我在 ColdFusion 应用程序中使用 iText 库来创建 PDF,目标是将各种文本添加到特定位置的特定大小的框中。
使用 ColumnText 可以完美完成(跳过细节):
<cfset directContent = writer.getDirectContent()>
<cfset ct = CreateObject("java", "com.lowagie.text.pdf.ColumnText").init(directContent)>
<cfset ct.setSimpleColumn(100, 50, 400, 400, 18, Element.ALIGN_JUSTIFIED)>
<cfset ct.setText( createObject("java", "com.lowagie.text.Phrase").init("#text_var#") ) >
<cfset ct.go()>
问题是:长文本被剪切,正如预期的那样(go()
返回ColumnText.NO_MORE_COLUMN
)。但在这种情况下,我需要通过在末尾添加例如“...”来表明文本并未完成(添加点或如果需要用“...”替换最后一个或两个符号)。
有没有一种简单的方法可以实现这一目标?例如,在我调用之后go(true)
- 我可以看到用于输出文本而没有实际输出的行数。但我需要以某种方式将实际文本放入框中。