3

I have a program that create TextFields inside a PDF-file so it can be used as a form. I would like to have the text I write in the TextFields I created to be centered though. How is that possible? My code currently looks like this:

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);

and I thought of an easy function to align text like this:

textBox.setAlignment(Alignment.CENTER);

but I didn't find it.

My problem

Impulse The Fox
  • 2,638
  • 2
  • 27
  • 52

1 Answers1

5

Use the Q flag:

textBox.setQ(PDTextField.QUADDING_CENTERED);

Other possible values are QUADDING_RIGHT and QUADDING_LEFT (which is the default).

Danyal Sandeelo
  • 12,196
  • 10
  • 47
  • 78
Tilman Hausherr
  • 17,731
  • 7
  • 58
  • 97