Інтерактивні форми

У цьому керівництві показано, як створювати та керувати полями AcroForm в PDF-документах за допомогою Aspose.PDF FOSS для Java. Ви навчитеся додавати радіо кнопки, ящики відтиску, текстові полі, комбо-іші і перелік-иші й отримувати подані значення полів.

API AcroForm

У. Form клас, доступний через: Document.getForm(), управляє всіма полями AcroForm в Полі додаються за допомогою покликання: Form.add(field, pageNumber).

RadioButtonField

Створити групу радіо кнопок, кожен варіант на свій власний Rectangle.Кожна з варіантів є: додається з етикетками та рамкою. setValue() для попереднього вибору варіанту:

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    RadioButtonField radio = new RadioButtonField(page);
    radio.setPartialName("color");
    radio.addOption("Red", new Rectangle(50, 50, 70, 70));
    radio.addOption("Blue", new Rectangle(50, 80, 70, 100));
    doc.getForm().add(radio, 1);
    radio.setValue("Red");
    doc.save("form.pdf");
}

setValue() вибирає варіант програмно. getValue() повертає поточний назва обраного варіанту.

CheckboxField

CheckboxField представляє одне булеве полем введення в формі PDF. Назначити setChecked(true) Додати його до форми на конкретний номер сторінки (1-індексавана):

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    CheckboxField cb = new CheckboxField(page, new Rectangle(100, 100, 120, 120));
    cb.setPartialName("agree");
    cb.setChecked(true);
    doc.getForm().add(cb, 1);
    doc.save("form.pdf");
}

TextBoxField

TextBoxField приймає вільний текст. Назначити значення по умові з: setValue() і Запишіть поле за допомогою форми перед збереженням:

try (Document doc = new Document()) {
    PageCollection pages = doc.getPages();
    Page page = pages.add();
    TextBoxField text = new TextBoxField(page, new Rectangle(50, 200, 250, 220));
    text.setPartialName("name");
    text.setValue("Default text");
    doc.getForm().add(text, 1);
    doc.save("form.pdf");
}

Поле ComboBox та поле ListBox

ComboBoxField і ListBoxField представлять переліки варіантів, які можна вибрати. опції через addOption() і розкрити getValue() щоб отримати вибір.

FormEditor

FormEditor є фасадний клас для роботи з полями AcroForm. Зв’язати документ з: bindPdf(), застосувати зміни, потім подзвонити save().

Читання значень поля

Після завантаження заповненої форми, отримати поточне значення названого поля шляхом покликання doc.getForm().get(name) і лиття на бетонний полів тип:

try (Document doc = new Document("form.pdf")) {
    RadioButtonField radio = (RadioButtonField) doc.getForm().get("color");
    String selected = radio.getValue();
    System.out.println("Selected: " + selected);
}

See Also

 Українська