如何使用PDFBox移动PDF字段



我正在尝试将PDF字段与行上的第一个对齐。我能够获得字段及其位置。我也可以在本地更改它,但是当我保存PDF时,字段出现在同一位置。这是代码:

PDDocument pdfDocument = PDDocument.load(new File("MyFile"));
PDDocumentCatalog docCatalog = pdfDocument.getDocumentCatalog();
PDAcroForm acroForm = docCatalog.getAcroForm();
String fieldName = "MyField";
PDField f = acroForm.getField(fieldName);
PDRectangle r = f.getWidgets().get(0).getRectangle();
r.setLowerLeftX(10);
r.setLowerLeftY(10);
r.setUpperRightX(10);
r.setUpperRightY(10);
pdfDocument.save(new File("MyModifiedFile"));
pdfDocument.close();

您必须将修改的矩形重新分配给小部件:

f.getWidgets().get(0).setRectangle(r);

因为与小部件不同,矩形不受PDF中的结构的支持。

最新更新