首页 > 解决方案 > 如何使 PDFormField 的内容居中?

问题描述

假设我正在使用 AcroForms 填写 PDF。

File blankDocument = new File("blank-document.pdf");
PDDocument document = PDDocument.load(blankDocument);
PDDocumentCatalog catalog = document.getDocumentCatalog();
PDAcroForm acroForm = catalog.getAcroForm();

for (PDFormField formField : acroForm.getFields()) {
    if (formField.getPartialName().equals("name")) {
         formField.setValue("Allan");
    }
}

document.save("filled_document.pdf");

是否可以将 my 的内容居中PDFormField?现在的方式,它只是从左到右填充该字段。

标签: javapdfbox

解决方案


调用 setValue() 之前,请执行以下操作:

if (formField instanceof PDVariableText)
{
    PDVariableText txtFormField = (PDVariableText) formField;
    txtFormField.setQ(PDVariableText.QUADDING_CENTERED);
}

推荐阅读