Criar AcroForm - criar PDF preenchível em Java
Aspose.PDF for Java permite que você crie uma ampla variedade de tipos de campo AcroForm do zero.
Criar um campo de caixa de texto
Use este exemplo quando precisar adicionar um campo de texto de linha única a um novo formulário PDF.
- Crie um novo documento PDF Document e adicione uma página.
- Crie um TextBoxField com um retângulo de destino e configure sua aparência.
- Adicione o campo ao Form e salve o documento.
public static void addTextBoxField(Path outputFile) {
try (Document document = new Document()) {
Page page = document.getPages().add();
Rectangle rectangle = new Rectangle(10, 600, 110, 620, true);
TextBoxField textBoxField = new TextBoxField(page, rectangle);
textBoxField.setPartialName("textbox1");
textBoxField.setValue("Text Box");
textBoxField.setDefaultAppearance(new DefaultAppearance("Arial", 10, Color.getDarkBlue().toRgb()));
Border border = new Border(textBoxField);
border.setWidth(1);
border.setStyle(BorderStyle.Dashed);
border.setDash(new Dash(3, 3));
textBoxField.setBorder(border);
textBoxField.getCharacteristics().setBorder(Color.getRed());
textBoxField.getCharacteristics().setBackground(Color.getYellow().toRgb());
document.getForm().add(textBoxField, 1);
document.save(outputFile.toString());
}
}
Criar um campo de caixa de texto com múltiplos widgets
Use este exemplo quando o mesmo valor de campo de texto deve aparecer em várias posições na página.
- Crie um novo documento PDF Document e adicione uma página.
- Defina vários retângulos e aparências para os widgets de campo.
- Crie o TextBoxField, configure cada widget e salve o documento.
public static void addTextBoxFieldNt(Path outputFile) {
try (Document document = new Document()) {
Page page = document.getPages().add();
Rectangle[] rects = {
new Rectangle(10, 600, 110, 620, true),
new Rectangle(10, 630, 110, 650, true),
new Rectangle(10, 660, 110, 680, true)
};
DefaultAppearance[] defaultAppearances = {
new DefaultAppearance("Arial", 10, Color.getDarkBlue().toRgb()),
new DefaultAppearance("Helvetica", 12, Color.getDarkGreen().toRgb()),
new DefaultAppearance(FontRepository.findFont("Calibri"), 14, Color.getDarkMagenta().toRgb())
};
TextBoxField textBoxField = new TextBoxField(page, rects);
textBoxField.setPartialName("textbox1");
textBoxField.setValue("Some text");
int index = 0;
for (WidgetAnnotation widget : textBoxField) {
widget.setDefaultAppearance(defaultAppearances[index]);
index++;
}
Border border = new Border(textBoxField);
border.setWidth(1);
border.setStyle(BorderStyle.Dashed);
border.setDash(new Dash(3, 3));
textBoxField.setBorder(border);
textBoxField.getCharacteristics().setBorder(Color.getRed());
textBoxField.getCharacteristics().setBackground(Color.getYellow().toRgb());
document.getForm().add(textBoxField);
document.save(outputFile.toString());
}
}
Criar um campo de botão de opção
Use este exemplo quando o Form deve permitir que o usuário escolha uma opção de um conjunto pré-definido.
- Crie um novo documento PDF Document e adicione uma página.
- Crie um RadioButtonField e adicione as opções necessárias.
- Adicione o campo ao Form e salve o PDF.
public static void addRadioButton(Path outputFile) {
try (Document document = new Document()) {
document.getPages().add();
RadioButtonField radio = new RadioButtonField(document.getPages().get_Item(1));
radio.addOption("Option 1", new Rectangle(100, 640, 120, 680, true));
radio.addOption("Option 2", new Rectangle(140, 640, 160, 680, true));
document.getForm().add(radio);
document.save(outputFile.toString());
}
}
Criar um campo de caixa de combinação
Use este exemplo quando o usuário deve selecionar um valor em uma lista suspensa.
- Crie um novo documento PDF Document e adicione uma página.
- Crie um ComboBoxField e adicione suas opções selecionáveis.
- Defina a seleção padrão e salve o documento.
public static void addComboBox(Path outputFile) {
try (Document document = new Document()) {
Page page = document.getPages().add();
ComboBoxField combo = new ComboBoxField(page, new Rectangle(100, 640, 150, 656, true));
combo.addOption("Red");
combo.addOption("Yellow");
combo.addOption("Green");
combo.addOption("Blue");
combo.setSelected(3);
document.getForm().add(combo);
document.save(outputFile.toString());
}
}
Criar um campo de caixa de seleção
Use este exemplo quando o formulário precisar de uma opção verdadeiro ou falso, como consentimento ou seleção de recurso.
- Crie um novo documento PDF Document e adicione uma página.
- Crie um CheckboxField e configure sua aparência.
- Adicione a caixa de seleção ao formulário e salve o arquivo de saída.
public static void addCheckboxFieldToPdf(Path outputFile) {
try (Document document = new Document()) {
Page page = document.getPages().add();
CheckboxField checkbox = new CheckboxField(page, new Rectangle(50, 620, 100, 650, true));
checkbox.getCharacteristics().setBackground(Color.getAqua().toRgb());
checkbox.setStyle(BoxStyle.Circle);
document.getForm().add(checkbox);
document.save(outputFile.toString());
}
}
Criar um campo de caixa de lista
Use este exemplo quando o formulário deve exibir múltiplas opções disponíveis em uma lista visível.
- Crie um novo documento PDF Document e adicione uma página.
- Crie um ListBoxField e adicione as opções disponíveis.
- Adicione o campo ao Form e salve o documento.
public static void addListBoxFieldToPdf(Path outputFile) {
try (Document document = new Document()) {
Page page = document.getPages().add();
ListBoxField listBox = new ListBoxField(page, new Rectangle(50, 650, 100, 700, true));
listBox.setPartialName("list");
listBox.addOption("Red");
listBox.addOption("Green");
listBox.addOption("Blue");
document.getForm().add(listBox);
document.save(outputFile.toString());
}
}
Criar um campo de assinatura
Use este exemplo quando o documento precisar reservar uma área visível para uma assinatura digital.
- Crie um novo documento PDF Document e adicione uma página.
- Crie um SignatureField no retângulo necessário.
- Adicione o campo ao formulário e salve o PDF de saída.
public static void addSignatureField(Path outputFile) {
try (Document document = new Document()) {
Page page = document.getPages().add();
SignatureField signatureField = new SignatureField(page, new Rectangle(100, 700, 200, 800, true));
signatureField.setPartialName("Signature1");
document.getForm().add(signatureField);
document.save(outputFile.toString());
}
}
Criar um campo de código de barras
Use este exemplo quando o formulário deve exibir dados legíveis por máquina dentro de um campo de código de barras.
- Crie um novo documento PDF Document e adicione uma página.
- Crie um BarcodeField e adicione o valor do código de barras.
- Adicione o campo ao Form e salve o documento.
public static void addBarcodeField(Path outputFile) {
try (Document document = new Document()) {
Page page = document.getPages().add();
BarcodeField barcode = new BarcodeField(page, new Rectangle(100, 700, 200, 740, true));
barcode.setPartialName("Barcode1");
barcode.addBarcode("1234567890");
document.getForm().add(barcode);
document.save(outputFile.toString());
}
}