
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
- Analizza i campi del modulo CheckBox
- Aggiungere o aggiornare i campi RadioButton
- Manipolare i campi del modulo ComboBox
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.
- Ottieni campi di controllo della casella del documento - Read document checkbox fields
- OttieniCampiCheckBoxPagina - Read specific page checkbox fields
- OttienicampoCheckBox - Read document checkbox field by name
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.

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.
- Ottieni campiDocumentComboBox - Read document combobox fields
- OttieniCampiComboBoxPagina - Read particular page combobox fields
- OttieniComboBoxField - Read document combobox field by name
- Campi PostComboBox - Add ComboBox field to document
- MettiComboBoxField - Replace document combobox field
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.