如何(水平)对齐PDFBox中的PDTextField文本?

时间:2017-12-12 07:30:39

标签: java pdf textbox pdfbox text-alignment

我有一个程序可以在PDF文件中创建TextFields,因此它可以用作表单。我希望我在我创建的TextFields中编写的文本能够居中。怎么可能?我的代码目前看起来像这样:

PDTextField textBox = new PDTextField(acroForm);
textBox.setPartialName("Field " + j + " " + i);
defaultAppearanceString = "/Helv 8 Tf 0 g"; //Textsize: 8
textBox.setDefaultAppearance(defaultAppearanceString);
acroForm.getFields().add(textBox);

PDAnnotationWidget widget = textBox.getWidgets().get(0);
PDRectangle rect = new PDRectangle(inputField.getX(), inputField.getY(), inputField.getWidth(), inputField.getHeight());
widget.setRectangle(rect);
widget.setPage(page);
widget.setPrinted(true);
page.getAnnotations().add(widget);

我想到了一个简单的函数来对齐这样的文字:

textBox.setAlignment(Alignment.CENTER);

但我找不到它。

My problem

1 个答案:

答案 0 :(得分:2)

使用Q标志:

textBox.setQ(PDTextField.QUADDING_CENTERED);

其他可能的值是QUADDING_RIGHT和QUADDING_LEFT(这是默认值)。