anteprima modulo pdf

I campi modulo sono uno dei componenti integrali quando si gestiscono i dati dei clienti e diventa facile distribuire i moduli Acro PDF agli utenti in modo che possano compilare i moduli con i dati di loro scelta e rispedirli. Sappiamo che è possibile utilizzare una varietà di campi modulo, ma tra tutti questi, TextBox, CheckBox, RadioButton e ComboBox sono molto comuni. Quindi, una volta che i dati sono stati compilati nei moduli Acro, analizziamo i campi modulo nel back office per estrarne i dati e salvarli in FDF, XML o direttamente nei database.

Sebbene tutte le operazioni, tra cui la creazione di moduli PDF, l’aggiunta di campi modulo, l’attività di aggiornamento dei campi modulo possano essere eseguite manualmente, quando si ha a che fare con un enorme set di documenti, l’operazione manuale non sembra essere fattibile perché richiede molto tempo ed è soggetta a errori a causa della gestione manuale dei dati. Quindi le routine automatiche tramite linguaggio di programmazione possono essere una soluzione praticabile. Pertanto, quando si crea un programma, abbiamo la possibilità di utilizzare una soluzione/API on-premise che può aiutarci a soddisfare tutti i requisiti oppure utilizzare API REST ospitate nel cloud per analizzare i campi modulo.

Vantaggi dell’API REST

Le API RESTful fanno un balzo in avanti qui perché non è necessario tenere traccia manualmente di tutte le versioni delle API. Inoltre, non è necessario mantenere il sistema aggiornato con le versioni delle API e non è necessario preoccuparsi di problemi di compatibilità delle API con un determinato linguaggio di programmazione, ecc. Pertanto, presentiamo Aspose.PDF Cloud SDK per Java che fornisce le capacità per creare, manipolare e trasformare documenti PDF in altri formati di file supportati. Java SDK è sviluppato su Aspose.PDF Cloud REST API a cui è possibile accedere facilmente tramite comandi cURL e gli SDK sono sviluppati per facilitare i nostri clienti nell’utilizzo di un particolare linguaggio di programmazione.

In questo blog faremo luce su come analizzare i diversi campi di un modulo:

Leggi, aggiungi o aggiorna i campi TextBox

L’API offre tre modi per leggere le informazioni associate ai campi TextBox.

| API | Tipo | Descrizione | Collegamento Swagger |

| ——————————————– | ———– | ——————————————– | ——————————- |

| /pdf/{name}/fields/textbox | GET | Leggi i campi TextBox del documento | GetDocumentTextBoxFields |

| /pdf/{name}/page/{pageNumber}/fields/textbox | GET | Leggi i campi TextBox del documento per una pagina specificata | GetPageTextBoxFields |

| /pdf/{name}/fields/textbox/{fieldName} | GET | Leggi i campi TextBox del documento in base al nome del campo | GetTextBoxField |

Comando cURL per leggere i campi TextBox

Poiché i file sono archiviati nel tuo archivio cloud personale, devi prima generare un token di autenticazione JWT che richiede il tuo Client ID e il tuo Client Secret personalizzati.

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>"

Esempio FormDataTextBox.pdf utilizzato nell’esempio precedente.

Java

// Per esempi completi e file di dati, visitare 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";
    // crea un'istanza dell'oggetto PdfAPi
    com.aspose.asposecloudpdf.api.PdfApi pdf = new com.aspose.asposecloudpdf.api.PdfApi(clientSecret,clientID);
    // Leggi i campi TextBox del documento
    TextBoxFieldsResponse response = pdf.getDocumentTextBoxFields("FormDataTextBox.pdf",null, null);
    // stampa i dettagli relativi ai campi recuperati
    System.out.println(response.getFields());
    }
}

Analizza i campi del modulo CheckBox

Quando si ha a che fare con le caselle di controllo, l’API offre anche la possibilità di leggere i valori delle caselle di controllo, aggiungere una nuova casella di controllo o aggiornare le proprietà associate a una casella di controllo esistente in un modulo PDF.

Comando cURL per leggere CheckBox a pagina 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 per aggiornare CheckBox sulla pagina 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\"}"

Richiedi URL

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

Java

// Per esempi completi e file di dati, visitare 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 {
    
    // crea un'istanza dell'oggetto PdfAPi
    com.aspose.asposecloudpdf.api.PdfApi pdf = new com.aspose.asposecloudpdf.api.PdfApi(clientSecret,clientID);
    // Crea istanza CheckBox
    CheckBoxField updatedCheckBox = new CheckBoxField();
    updatedCheckBox.partialName("Check Box1");
    updatedCheckBox.height(12.0);
    updatedCheckBox.width(12.0);
    // imposta lo stile della casella di controllo come Diamante
    updatedCheckBox.style(com.aspose.asposecloudpdf.model.BoxStyle.DIAMOND);
    updatedCheckBox.activeState("On");
    // abilitare il valore della casella di controllo
    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);
    // specificare i dettagli dell'indice della pagina
    updatedCheckBox.pageIndex(1);

    // imposta i dettagli dello stile del bordo della casella di controllo
    Border border = new Border();
    border.width(1);
    border.style(com.aspose.asposecloudpdf.model.BorderStyle.SOLID);
    border.effect(com.aspose.asposecloudpdf.model.BorderEffect.NONE);
    // Oggetto colorato per il bordo
    Color color = new Color();
    color.setR(120);
    color.setG(220);
    color.setB(10);
    // imposta il colore del bordo della casella di controllo
    border.color(color);
    // chiama il metodo per aggiornare il campo della casella di controllo nella pagina 1
    CheckBoxFieldResponse response =  pdf.putCheckBoxField("FormDataTextBox.pdf", "Check Box1", updatedCheckBox,null,null);
    // stampa codice di stato della risposta
    System.out.print(response.getStatus());
    }
}

Una volta eseguito il comando/codice, le proprietà associate al campo casella di controllo 1 vengono aggiornate come mostrato nell’immagine sottostante.

Anteprima del campo casella di controllo aggiornato

Immagine 1:- Anteprima della casella di controllo 1 aggiornata utilizzando il comando cURL

Aggiungere o aggiornare i campi RadioButton

Similmente ai campi TextBox e CheckBox, il Cloud SDK offre anche la possibilità di leggere e aggiornare i campi RadioButton nei documenti PDF.

Comando cURL per leggere i campi RadioButton nel 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>"

Richiedi URL

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

Manipolare i campi del modulo ComboBox

Nota che la manipolazione di ComboBox diventa molto comoda con l’aiuto di Aspose.PDF Cloud SDK per Java. Hai la possibilità di leggere i campi ComboBox esistenti sul documento, aggiungere un nuovo campo ComboBox o aggiornare un ComboBox esistente.

Comando cURL per leggere tutti i campi ComboBox

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

Richiedi URL

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

Conclusione

Come spiegato nell’articolo sopra, l’elaborazione dei campi del modulo è diventata piuttosto semplice con l’aiuto delle API Cloud. Potresti prendere in considerazione la lettura di un blog correlato Form Parser | Form Recognizer | PDF Filling | Automatizzare l’elaborazione dei moduli con REST Web API.