使用iText禁用PDF中的PushbuttonField

时间:2017-09-07 05:40:34

标签: java itext

我使用开放式办公室创建了 PDF 模板。我在其中添加了PushButtonField。每当用户点击它时,所有文本字段数据都被清除(其他表单数据不应该被清除) .So如何使用java或直接从开放式办公室禁用(不可点击但可见) PushButtonField。我尝试过两个解决方案,但它们无法正常工作。

1)在OpenOffice中将PushButtonField属性“Enabled”设置为“No”。

2)从Java访问pushbuttonfield by id和set option to readonly。

ad.setOptions(BaseField.READ_ONLY)

感谢。

1 个答案:

答案 0 :(得分:3)

您可以尝试的一件事是将表单部分展平。只需将您想要无法点击的按钮名称传递给“partialFormFlattening”。

PdfDocument document = new PdfDocument(new PdfReader(INPUT), new PdfWriter(OUTPUT));

PdfAcroForm form = PdfAcroForm.getAcroForm(document, true);

form.partialFormFlattening(nameOfTheButtonField);
form.flattenFields();

document.close();