如何使用pdfbox移动pdf字段?

时间:2017-06-03 08:01:19

标签: pdf pdfbox

我试图将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();

1 个答案:

答案 0 :(得分:1)

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

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

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