Apache PdfBox如何设置字段字体大小

问题描述

我正在使用org.apache.pdfBox读取pdf并填写一些字段。

现在我不得不质疑字体大小太大。

我认为将字体大小设置为12很容易。但这非常复杂。

实际上,这很糟糕。有人知道怎么做吗?这是我的代码,没有样式。

 final PDDocument document = PDDocument.load(template);
    PDPage page = new PDPage(PDRectangle.A4);
    document.addPage(page);

    final PDAcroForm acroForm = document.getDocumentCatalog().getAcroForm();
    final Iterator<PDField> it = acroForm.getFieldIterator();

    for (PDField f : acroForm.getFields()) {
        System.out.println(f.toString());

        if (f instanceof PDTextField) {
            f.set
            f.setValue("Some value");
        }
    };

解决方法

如评论中所述,

的结果
((PDTextField) f).getDefaultAppearance()

/Helv 0 Tf 0 g

表示Helvetica,大小为0(=可变大小),颜色为黑色(灰色色彩空间,0为黑色,1为白色)。

因此要设置特定大小,请致电

((PDTextField) f).setDefaultAppearance("/Helv 12 Tf 0 g")

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...