Formulários interativos

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, campos do texto, combo boxes e list box, e recuperar os valores dos campos enviados.

API do AcroForm

A Comissão Form classe, acessível através de: Document.getForm(), gerencia todos os campos do AcroForm em: Os campos são adicionados através da chamada de “Documento”. Form.add(field, pageNumber).

RadioButtonField

Crie um grupo de botões de rádio, cada opção por si só Rectangle.Cada opção é: acrescentado com um rótulo e uma caixa de contorno. setValue() para selecionar uma opção:

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() selecciona uma opção programaticamente. getValue() Retorna o valor atual. nome da opção selecionada.

CheckboxField

CheckboxField representa um único campo de entrada booleano no formulário PDF. Set setChecked(true) adicionar ao formulário em um Número específico de página (1-indexado):

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 Aceita entrada de texto livre. 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("Default text");
    doc.getForm().add(text, 1);
    doc.save("form.pdf");
}

Campo ComboBox e campo ListBox

ComboBoxField e a) ListBoxField A Comissão e o Conselho devem apresentar as suas propostas. opções via addOption() e expor getValue() para recuperar a selecção.

FormEditor

FormEditor é uma classe de fachada para trabalhar com campos AcroForm. Ligue um documento com: bindPdf(), aplicar alterações, em seguida, chamar save().

Leitura de valores do campo

Após carregar um formulário preenchido, recuperar o valor atual de um campo nomeado chamando doc.getForm().get(name) e fundição para o tipo de campo em concreto:

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

Ver também:

 Português