PDF itext form.setField文本如何垂直居中显示?

问题描述 投票:0回答:1

我用adobeDC制作了一个PDF模板,我向模板中添加了表单字段,现在我希望表单中的文本垂直居中,但是setFieldProperty()方法不能使文本垂直居中,现在我需要com.itextpdf.text 。但是此段可能需要绝对定位,但是我不确定多少文本内容,我想知道是否有一种简便的方法,请帮助我

jar版本:itextpdf-5.5.0.jar

form.setField(name, top+map.get(name));
itext
1个回答
0
投票
int pageNo = form.getFieldPositions(name).get(0).page;
Rectangle signRect = form.getFieldPositions(name).get(0).position;
float x = signRect.getLeft();
float y = signRect.getBottom();
PdfContentByte under = ps.getOverContent(pageNo);
ColumnText column = new ColumnText(under);
PdfPTable table = new PdfPTable(1);
PdfPCell pdfCell = new PdfPCell();
pdfCell.setMinimumHeight(40);
pdfCell.disableBorderSide(15);
pdfCell.setVerticalAlignment(Element.ALIGN_MIDDLE);
Font font2 = new Font(bfChinese, 7,Font.NORMAL);
Paragraph paragraph = new Paragraph(map.get(name),font2);
pdfCell.setPhrase(paragraph);
table.addCell(pdfCell);
column.addElement(table);column.setSimpleColumn(signRect.getLeft()-25,signRect.getBottom(),signRect.getRight()+25,signRect.getTop());
column.go();
© www.soinside.com 2019 - 2024. All rights reserved.