问题描述
我正在使用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")