Publicando Formulários em PDF via Python

Adicionar Botão de Envio com FormEditor

O trecho de código a seguir demonstra como adicionar um botão de envio a um formulário PDF usando a classe FormEditor no Aspose.PDF for Python via .NET. O botão está configurado para enviar os dados do formulário para um URL especificado ao ser clicado.

  1. Criar um FormEditor objeto.
  2. Adicionar um botão de envio à página de destino.
  3. Definir o URL de envio e as coordenadas do botão.
  4. Salvar o PDF atualizado.
import aspose.pdf as ap

def add_submit_button(input_file_name, output_file_name):
    editor = ap.facades.FormEditor(input_file_name, output_file_name)
    editor.add_submit_btn(
        "submitbutton", 1, "Submit", "http://localhost/testing/show", 100, 450, 150, 475
    )
    editor.save()

Adicionar Ação de Envio Personalizada

O trecho de código a seguir explica como criar um botão de envio personalizado em um formulário PDF usando Aspose.PDF for Python via .NET. O botão está configurado para enviar os dados do formulário para uma URL especificada ao ser clicado.

  1. Abra o PDF com ap.Document().
  2. Crie uma ação de envio.
  3. Defina a URL de destino e as flags de envio.
  4. Crie um campo de botão e vincule sua ação de clique.
  5. Adicione o botão ao formulário.
  6. Salvar o PDF atualizado.
import aspose.pdf as ap

def add_submit_action(input_file_name, output_file_name):
    document = ap.Document(input_file_name)

    submit_action = ap.annotations.SubmitFormAction()
    submit_action.url = ap.FileSpecification("http://localhost:3000/submit")
    submit_action.flags = (
        ap.annotations.SubmitFormAction.EXPORT_FORMAT
        | ap.annotations.SubmitFormAction.SUBMIT_COORDINATES
    )

    rect = ap.Rectangle(10, 10, 100, 40)
    submit_button = ap.forms.ButtonField(document.pages[1], rect)
    submit_button.partial_name = "SubmitButton"
    submit_button.value = "Submit"
    submit_button.actions.on_release_mouse_btn = submit_action

    document.form.add(submit_button, 1)
    document.save(output_file_name)

Tópicos Relacionados