第一个问题可以用这种方式解决:
List multiLinePosition = acroFields.getFieldPositions("multiLine");
int page = multiLinePosition.get(0).page;
Rectangle rectangle = multiLinePosition.get(0).position;
float left = rectangle.getLeft();
float right = rectangle.getRight();
float top = rectangle.getTop();
float bottom = rectangle.getBottom();
//BaseFont baseFont = BaseFont.createFont("STSong-Light", "UniGB-UCS2-H", false);
Font font = new Font(baseFont, 12, Font.BOLD, BaseColor.BLACK);
PdfContentByte pdfContentByte = ps.getOverContent(page);
ColumnText columnText = new ColumnText(pdfContentByte);
Rectangle r = new Rectangle(left, bottom, right, top);
columnText.setSimpleColumn(r);
//FontFactory.getFont(FontFactory.COURIER, 20, Font.BOLD, BaseColor.RED)
Chunk chun
本文介绍了如何解决使用iText填充PDF时文本域自动换行的问题。通过获取文本域的位置信息,创建ColumnText对象并设定区域,结合Font和Paragraph实现多行文本的填充。然而,对于无法在一个文本域内自动换行的问题,文章指出可能需要使用多个文本域来实现。
最低0.47元/天 解锁文章
1432

被折叠的 条评论
为什么被折叠?



