pré-visualização do formulário pdf

Os campos de formulário são um dos componentes integrais ao lidar com dados do cliente e se torna fácil distribuir os formulários PDF Acro com os usuários para que eles possam preencher os formulários com dados de sua escolha e enviá-los de volta. Estamos familiarizados com o fato de que uma variedade de campos de formulário pode ser usada, mas entre todos eles, TextBox, CheckBox, RadioButton e ComboBoxes são muito comuns. Então, uma vez que os dados foram preenchidos nos formulários Acro, nós analisamos os campos do formulário no back office para extrair dados deles e salvá-los em FDF, XML, ou diretamente em bancos de dados.

Embora todas as operações, incluindo criação de formulários PDF, adição de campos de formulário, atividade de atualização de campos de formulário possam ser realizadas manualmente, ao lidar com um grande conjunto de documentos, a operação manual não parece ser viável porque consome tempo e é propensa a erros devido ao manuseio manual de dados. Portanto, rotinas automáticas por meio de linguagem de programação podem ser uma solução viável. Portanto, ao criar um programa, temos a opção de usar uma solução/API local que pode nos ajudar a cumprir todos os requisitos ou usar APIs REST hospedadas na nuvem para analisar os campos do formulário.

Benefícios da API REST

As APIs RESTful ganham um salto aqui porque você não precisa manter o controle manual de todas as versões da API. Além disso, você não precisa manter seu sistema atualizado com versões da API e não precisa se preocupar com problemas de compatibilidade das APIs com uma determinada linguagem de programação, etc. Portanto, apresentamos Aspose.PDF Cloud SDK para Java que fornece os recursos para criar, manipular e transformar documentos PDF em outros formatos de arquivo suportados. O Java SDK é desenvolvido sobre as APIs REST do Aspose.PDF Cloud que podem ser facilmente acessadas usando comandos cURL e os SDKs são desenvolvidos para facilitar nossos clientes usando uma linguagem de programação específica.

Neste blog, vamos esclarecer como analisar diferentes campos de formulário:

Ler, adicionar ou atualizar campos TextBox

A API oferece três maneiras de ler informações associadas aos campos TextBox.

| API | Tipo | Descrição | Link Swagger |

| ——————————————– | ———– | ——————————————– | —————————— |

| /pdf/{name}/fields/textbox | GET | Ler campos TextBox do documento | GetDocumentTextBoxFields |

| /pdf/{nome}/página/{númerodapagina}/campos/caixadetexto | OBTER | Ler campos da caixa de texto do documento para uma determinada página | GetPageTextBoxFields |

| /pdf/{name}/fields/textbox/{fieldName} | GET | Ler campos TextBox do documento por um nome de campo | GetTextBoxField |

Comando cURL para ler campos TextBox

Como os arquivos são armazenados em seu armazenamento pessoal em nuvem, você precisa primeiro gerar um token de autenticação JWT que requer seu ID de cliente e segredo de cliente personalizados.

curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=xxxx&client_secret=xxxx" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
curl -X GET "https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/textbox" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"

Exemplo FormDataTextBox.pdf usado no exemplo acima.

Java

// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-java
const string clientID = "xxxxxx-1c8e-4ea4-a948-3857547232fa";
const string clientSecret = "xxxxxx613237f013e329cdf5694cc96a";

import com.aspose.asposecloudpdf.ApiException;
import com.aspose.asposecloudpdf.api.PdfApi;
import com.aspose.asposecloudpdf.examples.Common;
import com.aspose.asposecloudpdf.model.FieldResponse;

public class GetFieldTestExample {

	public static void main(String[] args) throws ApiException {
		String name = "PdfWithAcroForm.pdf";
    // crie uma instância do objeto PdfAPi
    com.aspose.asposecloudpdf.api.PdfApi pdf = new com.aspose.asposecloudpdf.api.PdfApi(clientSecret,clientID);
    // Ler campos TextBox do documento
    TextBoxFieldsResponse response = pdf.getDocumentTextBoxFields("FormDataTextBox.pdf",null, null);
    // imprima os detalhes sobre os campos buscados
    System.out.println(response.getFields());
    }
}

Analisar campos de formulário CheckBox

Ao lidar com CheckBoxes, a API também fornece recursos para ler valores de CheckBox, adicionar uma nova caixa de seleção ou atualizar as propriedades associadas a uma caixa de seleção existente no formulário PDF.

Comando cURL para ler CheckBox na página 1

curl -X GET "https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/page/1/fields/checkbox" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"

Comando CURL para atualizar CheckBox na página 1

curl -X PUT "https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/checkbox/Check%20Box1" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-H "Content-Type: application/json" \
-d "{ \"Links\": [ { \"Href\": \"string\", \"Rel\": \"string\", \"Type\": \"string\", \"Title\": \"string\" } ], \"PartialName\": \"Aspose CheckBox\", \"FullName\": \"Aspose CheckBox\", \"Rect\": { \"LLX\": 88.3573, \"LLY\": 687.617, \"URX\": 97.0198, \"URY\": 695.413 }, \"Value\": \"null\", \"PageIndex\": 1, \"Height\": 12, \"Width\": 12, \"ZIndex\": 0, \"IsGroup\": false, \"IsSharedField\": true, \"Flags\": [ \"Default\" ], \"Color\": { \"A\": 0, \"R\": 150, \"G\": 120, \"B\": 0 }, \"Contents\": \"Field Updated\", \"Margin\": { \"Left\": 0, \"Right\": 0, \"Top\": 0, \"Bottom\": 0 }, \"Highlighting\": \"None\", \"HorizontalAlignment\": \"Left\", \"VerticalAlignment\": \"Center\", \"Border\": { \"Width\": 1, \"EffectIntensity\": 1, \"Style\": \"Solid\", \"Effect\": \"None\", \"Dash\": { \"On\": 1, \"Off\": 2 }, \"Color\": { \"A\": 255, \"R\": 120, \"G\": 120, \"B\": 0 } }, \"AllowedStates\": [ \"Yes\",\"Off\" ], \"Style\": \"Circle\", \"ActiveState\": \"On\", \"Checked\": true, \"ExportValue\": \"Yes\"}"

URL da solicitação

https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/checkbox/Check%20Box1

Java

// Para exemplos completos e arquivos de dados, acesse https://github.com/aspose-pdf-cloud/aspose-pdf-cloud-java
const string clientID = "xxxxxx-1c8e-4ea4-a948-3857547232fa";
const string clientSecret = "xxxxxx613237f013e329cdf5694cc96a";

import com.aspose.asposecloudpdf.model.Rectangle;
import com.aspose.asposecloudpdf.model.CheckBoxField;
import com.aspose.asposecloudpdf.model.Border;
import com.aspose.asposecloudpdf.model.Color;
import com.aspose.asposecloudpdf.model.CheckBoxFieldResponse;

public class UpdateCheckBoxFieldExample {

	public static void main(String[] args) throws ApiException {
    
    // crie uma instância do objeto PdfAPi
    com.aspose.asposecloudpdf.api.PdfApi pdf = new com.aspose.asposecloudpdf.api.PdfApi(clientSecret,clientID);
    // Criar instância CheckBox
    CheckBoxField updatedCheckBox = new CheckBoxField();
    updatedCheckBox.partialName("Check Box1");
    updatedCheckBox.height(12.0);
    updatedCheckBox.width(12.0);
    // definir estilo de caixa de seleção como Diamante
    updatedCheckBox.style(com.aspose.asposecloudpdf.model.BoxStyle.DIAMOND);
    updatedCheckBox.activeState("On");
    // habilitar o valor da caixa de seleção
    updatedCheckBox.checked(true);

    Rectangle rect = new Rectangle();
    rect.setLLX(88.3573);
    rect.setLLY(687.617);
    rect.setURX(97.0198);
    rect.setURY(695.413);
    updatedCheckBox.rect(rect);
    // especifique os detalhes do índice da página
    updatedCheckBox.pageIndex(1);

    // definir detalhes do estilo de borda da caixa de seleção
    Border border = new Border();
    border.width(1);
    border.style(com.aspose.asposecloudpdf.model.BorderStyle.SOLID);
    border.effect(com.aspose.asposecloudpdf.model.BorderEffect.NONE);
    // Objeto de cor para borda
    Color color = new Color();
    color.setR(120);
    color.setG(220);
    color.setB(10);
    // definir cor da borda da caixa de seleção
    border.color(color);
    // chamar método para atualizar campo de caixa de seleção na página 1
    CheckBoxFieldResponse response =  pdf.putCheckBoxField("FormDataTextBox.pdf", "Check Box1", updatedCheckBox,null,null);
    // imprimir código de status de resposta
    System.out.print(response.getStatus());
    }
}

Depois que o comando/código é executado, as propriedades associadas ao campo da caixa de seleção 1 são atualizadas, conforme mostrado na imagem abaixo.

Visualização do campo de caixa de seleção atualizado

Imagem 1:- Visualização da caixa de seleção 1 atualizada usando o comando cURL

Adicionar ou atualizar campos RadioButton

Semelhante aos campos TextBox e CheckBox, o Cloud SDK também fornece recursos para ler e atualizar campos RadioButton em documentos PDF.

Comando cURL para ler campos RadioButton em documento PDF

curl -X GET "https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/radiobutton" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"

URL da solicitação

https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/radiobutton

Manipular campos de formulário ComboBox

Observe que a manipulação do ComboBox se torna muito útil com a ajuda do Aspose.PDF Cloud SDK para Java. Você tem a opção de ler campos ComboBox existentes no documento, adicionar um novo campo ComboBox ou atualizar um ComboBox existente.

Comando cURL para ler todos os campos ComboBox

curl -X GET "https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/combobox" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>"

URL da solicitação

https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/combobox

Conclusão

Conforme explicado no artigo acima, o processamento de campos de formulário se tornou bem fácil com a ajuda de APIs de nuvem. Você pode considerar ler um blog relacionado Form Parser | Form Recognizer | PDF Filling | Automate form processing with REST Web API.