Як працювати з інтерактивними формами в Java

Як працювати з інтерактивними формами в Java

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

Створення групи радіо кнопок

RadioButtonField представляє групу взаємовиключних варіантів. додається етикетка і Rectangle Назначити початкове значення за допомогою покликання setValue() з одним із опційних етикеток:

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

Додати ящик для відтиску

А. - В. CheckboxField є єдиним булевим полем. setChecked(true) зробити це Поле додається до форми за конкретним номером сторінки (1-індексавана):

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

Додати поле з текстом

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("Enter your name");
    doc.getForm().add(text, 1);
    doc.save("form.pdf");
}

Отримати обрану вартість

Після завантаження форми, виховувати поточне значення поля з його частковою назвою. Задати поле на конкретний тип для покликання методів специфічного типу:

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

See Also

 Українська