Como trabalhar com formulários interativos em Java

Como trabalhar com formulários interativos em Java

Este guia mostra como criar e gerenciar campos de AcroForm em documentos PDF usando Aspose.PDF FOSS para Java. Você aprenderá a adicionar botões de rádio, caixas de seleção e campos com texto e ler os valores dos campos do formulário enviados.

Crie um grupo de botões de rádio

RadioButtonField representa um grupo de opções que se excluem mutuamente. acrescentado com um rótulo e uma Rectangle Câmara de definição. setValue() com um dos rótulos de opção:

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");
}

Adicionar uma caixa de seleção

A. - Não . CheckboxField é um único campo booleano. Set setChecked(true) Para o fazer . O campo é adicionado ao formulário num número de página específico (1-indexado):

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");
}

Adicionar um campo de texto

TextBoxField Aceita a entrada de texto do utilizador. Defina um valor padrão com setValue() e a) Registre o campo com o formulário antes de guardar:

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");
}

Obter o valor selecionado

Após carregar um formulário, obtenha o valor atual de um campo pelo seu nome parcial. Coloque o campo no tipo concreto para chamar métodos específicos do tipo:

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

Ver também:

 Português