Itext pdf,如何将字符串绘制到特定位置?

时间:2016-07-06 14:44:07

标签: java pdf itext

我正在尝试使用Itext将一些字符串输出到PDF。目前我可以将它们打印到文档中,但我想将它们绘制/写入文档中的特定(x,y)。我该怎么做?或者是否有任何可以提供帮助的教程或资源?任何信息将不胜感激。

1 个答案:

答案 0 :(得分:2)

如果您使用的是iText 5,请转到常见问题解答部分,方便标题为Absolute positioning of text

您会找到问题的答案,例如How to write a Zapfdingbats character at a specific location on a page?在该问题的答案中,我们使用ColumnText.showTextAligned()

Phrase phrase = new Phrase(zapfstring, font);

其中zapfstring是包含您想要的任何Zapfdingbats字符的字符串,fontFont个对象。然后我们将它添加到绝对位置:

PdfContentByte canvas = writer.getDirectContent();
ColumnText.showTextAligned(canvas, Element.ALIGN_CENTER, phrase, x, y, 0);

如果要在矩形内添加文本(如果文本不适合宽度,请将文本换行),请查看以下问题:How to add text inside a rectangle?

PdfContentByte canvas = writer.getDirectContent();
ColumnText ct = new ColumnText(canvas);
ct.setSimpleColumn(rect);
ct.addElement(new Paragraph("This is the text added in the rectangle"));
ct.go();

如果您使用的是iText 7,请使用setFixedPosition()方法,例如Paragraph对象。