Publicación de formularios en PDF mediante Java

Aspose.PDF for Java admite la creación de botones de envío tanto basada en fachada como basada en DOM.

Agregar un botón de envío con FormEditor

  1. Cree una fachada FormEditor para el documento PDF de origen.
  2. Agregue el objeto botón de envío configurado a través de la fachada FormEditor.
  3. Guarde el documento PDF actualizado.
public static void addSubmitButton(Path inputFile, Path outputFile) {
    FormEditor editor = new FormEditor();
    editor.bindPdf(inputFile.toString());
    try {
        editor.addSubmitBtn("submitbutton", 1, "Submit", "http://localhost/testing/show",
                100, 450, 150, 475);
        editor.save(outputFile.toString());
    } finally {
        editor.close();
    }
}

Agregar una acción de envío manualmente

  1. Abra el PDF de origen Document.
  2. Cree el SubmitFormAction y URL FileSpecification.
  3. Cree el ButtonField en el objetivo Page y asigne la acción de envío.
  4. Guarde el PDF actualizado Document.
public static void addSubmitAction(Path inputFile, Path outputFile) {
    try (Document document = new Document(inputFile.toString())) {
        SubmitFormAction submitAction = new SubmitFormAction();
        submitAction.setUrl(new FileSpecification("http://localhost:3000/submit"));
        submitAction.setFlags(SubmitFormAction.EXPORT_FORMAT | SubmitFormAction.SUBMIT_COORDINATES);

        ButtonField submitButton = new ButtonField(document.getPages().get_Item(1), new Rectangle(10, 10, 100, 40));
        submitButton.setPartialName("SubmitButton");
        submitButton.setValue("Submit");
        submitButton.getPdfActions().add(submitAction);

        document.getForm().add(submitButton, 1);
        document.save(outputFile.toString());
    }
}