
ฟิลด์ฟอร์มเป็นส่วนประกอบที่สำคัญอย่างหนึ่งในการจัดการข้อมูลของลูกค้า และมันง่ายมากที่จะแจกจ่ายฟอร์ม Acro PDF ให้กับผู้ใช้เพื่อให้พวกเขาสามารถกรอกข้อมูลที่ต้องการในฟอร์มและส่งกลับคืน เรารู้ดีว่าสามารถใช้ฟิลด์ฟอร์มได้หลากหลาย แต่ในบรรดาฟิลด์เหล่านี้ TextBox, CheckBox, RadioButton และ ComboBox เป็นฟิลด์ที่ใช้กันทั่วไป ดังนั้น เมื่อกรอกข้อมูลลงในฟอร์ม Acro แล้ว เราจะวิเคราะห์ฟิลด์ฟอร์มที่แบ็คออฟฟิศเพื่อดึงข้อมูลจากฟิลด์เหล่านี้และบันทึกลงใน FDF, XML หรือลงในฐานข้อมูลโดยตรง
แม้ว่าการดำเนินการทั้งหมดรวมถึงการสร้างแบบฟอร์ม PDF การเพิ่มฟิลด์แบบฟอร์ม การอัปเดตฟิลด์แบบฟอร์ม จะสามารถดำเนินการด้วยตนเองได้ แต่เมื่อต้องจัดการกับเอกสารจำนวนมาก การดำเนินการด้วยตนเองดูเหมือนจะไม่สามารถทำได้ เนื่องจากใช้เวลานานและมีแนวโน้มเกิดข้อผิดพลาดเนื่องจากต้องจัดการข้อมูลด้วยตนเอง ดังนั้น รูทีนอัตโนมัติผ่านภาษาการเขียนโปรแกรมจึงเป็นวิธีแก้ปัญหาที่ใช้งานได้จริง ดังนั้น เมื่อสร้างโปรแกรม เราจึงมีตัวเลือกในการใช้โซลูชัน/API ภายในองค์กรที่ช่วยให้เราบรรลุข้อกำหนดทั้งหมดได้ หรือใช้ REST API ที่โฮสต์บนคลาวด์เพื่อแยกวิเคราะห์ฟิลด์แบบฟอร์ม
ประโยชน์ของ REST API
RESTful APIs ก้าวไปอีกขั้นเพราะคุณไม่จำเป็นต้องติดตามเวอร์ชัน API ทั้งหมดด้วยตนเอง นอกจากนี้ คุณไม่จำเป็นต้องอัปเดตระบบด้วยเวอร์ชัน API และไม่ต้องกังวลเกี่ยวกับปัญหาความเข้ากันได้ของ API กับภาษาการเขียนโปรแกรมบางภาษา เป็นต้น ดังนั้น เราจึงนำเสนอ Aspose.PDF Cloud SDK for Java ซึ่งให้ความสามารถในการสร้าง จัดการ และแปลงเอกสาร PDF เป็นรูปแบบไฟล์ที่รองรับอื่นๆ Java SDK ได้รับการพัฒนาบน Aspose.PDF Cloud REST APIs ซึ่งสามารถเข้าถึงได้ง่ายโดยใช้คำสั่ง cURL และ SDK ได้รับการพัฒนาขึ้นเพื่ออำนวยความสะดวกให้ลูกค้าของเราใช้ภาษาการเขียนโปรแกรมเฉพาะ
ในบล็อกนี้ เราจะมาอธิบายวิธีแยกฟิลด์ฟอร์มต่างๆ:
- อ่าน เพิ่ม หรืออัปเดตฟิลด์ TextBox
- วิเคราะห์ช่องฟอร์ม CheckBox
- เพิ่มหรืออัปเดตฟิลด์ RadioButton
- การจัดการฟิลด์ฟอร์ม ComboBox
อ่าน เพิ่ม หรืออัปเดตฟิลด์ TextBox
API นำเสนอสามวิธีในการอ่านข้อมูลที่เกี่ยวข้องกับฟิลด์ TextBox
| API | ประเภท | คำอธิบาย | ลิงค์ Swagger |
| /pdf/{name}/fields/textbox | GET | อ่านเอกสาร TextBox fields | GetDocumentTextBoxFields |
| /pdf/{name}/page/{pageNumber}/fields/textbox | GET | อ่านเอกสาร TextBox fields สำหรับหน้าที่กำหนด | GetPageTextBoxFields |
| /pdf/{name}/fields/textbox/{fieldName} | GET | อ่านเอกสาร TextBox fields ตามชื่อฟิลด์ | GetTextBoxField |
คำสั่ง cURL เพื่ออ่านฟิลด์ TextBox
เนื่องจากไฟล์ถูกเก็บไว้ในพื้นที่จัดเก็บข้อมูลบนคลาวด์ส่วนตัวของคุณ ดังนั้นคุณต้องสร้างโทเค็นการตรวจสอบสิทธิ์ JWT ก่อน ซึ่งต้องใช้รหัสไคลเอนต์และความลับไคลเอนต์ส่วนบุคคลของคุณ
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>"
ตัวอย่าง FormDataTextBox.pdf ที่ใช้ในตัวอย่างข้างต้น
Java
// สำหรับตัวอย่างและไฟล์ข้อมูลแบบสมบูรณ์ โปรดไปที่ 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";
// สร้างอินสแตนซ์ของวัตถุ PdfAPi
com.aspose.asposecloudpdf.api.PdfApi pdf = new com.aspose.asposecloudpdf.api.PdfApi(clientSecret,clientID);
// อ่านเอกสาร TextBox ฟิลด์
TextBoxFieldsResponse response = pdf.getDocumentTextBoxFields("FormDataTextBox.pdf",null, null);
// พิมพ์รายละเอียดเกี่ยวกับฟิลด์ที่ดึงมา
System.out.println(response.getFields());
}
}
วิเคราะห์ช่องฟอร์ม CheckBox
เมื่อจัดการกับ CheckBoxes, API ยังให้ความสามารถในการอ่านค่า CheckBox, เพิ่มกล่องกาเครื่องหมายใหม่ หรืออัปเดตคุณสมบัติที่เชื่อมโยงกับกล่องกาเครื่องหมายที่มีอยู่บนแบบฟอร์ม PDF อีกด้วย
- รับข้อมูลกล่องกาเครื่องหมายเอกสาร - Read document checkbox fields
- รับฟิลด์กล่องตรวจสอบหน้า - Read specific page checkbox fields
- รับ CheckBoxField - Read document checkbox field by name
คำสั่ง cURL เพื่ออ่าน CheckBox บนหน้า 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>"
คำสั่ง CURL เพื่ออัปเดต CheckBox บนหน้าที่ 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
https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/checkbox/Check%20Box1
Java
// สำหรับตัวอย่างและไฟล์ข้อมูลแบบสมบูรณ์ โปรดไปที่ 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 {
// สร้างอินสแตนซ์ของวัตถุ PdfAPi
com.aspose.asposecloudpdf.api.PdfApi pdf = new com.aspose.asposecloudpdf.api.PdfApi(clientSecret,clientID);
// สร้างอินสแตนซ์ CheckBox
CheckBoxField updatedCheckBox = new CheckBoxField();
updatedCheckBox.partialName("Check Box1");
updatedCheckBox.height(12.0);
updatedCheckBox.width(12.0);
// ตั้งค่ารูปแบบกล่องกาเครื่องหมายเป็นเพชร
updatedCheckBox.style(com.aspose.asposecloudpdf.model.BoxStyle.DIAMOND);
updatedCheckBox.activeState("On");
// เปิดใช้งานค่าช่องกาเครื่องหมาย
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);
// ระบุรายละเอียดดัชนีหน้า
updatedCheckBox.pageIndex(1);
// ตั้งค่ารายละเอียดรูปแบบเส้นขอบของกล่องกาเครื่องหมาย
Border border = new Border();
border.width(1);
border.style(com.aspose.asposecloudpdf.model.BorderStyle.SOLID);
border.effect(com.aspose.asposecloudpdf.model.BorderEffect.NONE);
// วัตถุสีสำหรับขอบ
Color color = new Color();
color.setR(120);
color.setG(220);
color.setB(10);
// ตั้งค่าสีเส้นขอบของกล่องกาเครื่องหมาย
border.color(color);
// วิธีการเรียกเพื่ออัพเดตช่องกาเครื่องหมายบนหน้า 1
CheckBoxFieldResponse response = pdf.putCheckBoxField("FormDataTextBox.pdf", "Check Box1", updatedCheckBox,null,null);
// พิมพ์รหัสสถานะการตอบกลับ
System.out.print(response.getStatus());
}
}
เมื่อดำเนินการคำสั่ง/โค้ดแล้ว คุณสมบัติที่เชื่อมโยงกับช่องกาเครื่องหมาย 1 จะได้รับการอัปเดตตามที่แสดงในรูปภาพด้านล่าง

ภาพที่ 1:- ดูตัวอย่างกล่องกาเครื่องหมาย 1 ที่อัปเดตโดยใช้คำสั่ง cURL
เพิ่มหรืออัปเดตฟิลด์ RadioButton
คล้ายกับฟิลด์ TextBox และ CheckBox, Cloud SDK ยังมอบความสามารถในการอ่านและอัปเดตฟิลด์ RadioButton ในเอกสาร PDF อีกด้วย
คำสั่ง cURL เพื่ออ่านฟิลด์ RadioButton ในเอกสาร 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
https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/radiobutton
การจัดการฟิลด์ฟอร์ม ComboBox
โปรดทราบว่าการจัดการ ComboBox จะมีประโยชน์มากด้วยความช่วยเหลือของ Aspose.PDF Cloud SDK สำหรับ Java คุณสามารถเลือกอ่านฟิลด์ ComboBox ที่มีอยู่ในเอกสาร เพิ่มฟิลด์ ComboBox ใหม่ หรืออัปเดต ComboBox ที่มีอยู่
- รับฟิลด์กล่องรวมเอกสาร - Read document combobox fields
- รับฟิลด์กล่องรวมหน้า - Read particular page combobox fields
- รับ ComboBoxField - Read document combobox field by name
- กล่องคอมโบฟิลด์โพสต์ - Add ComboBox field to document
- ใส่คอมโบบ็อกซ์ฟิลด์ - Replace document combobox field
คำสั่ง cURL เพื่ออ่านฟิลด์ 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
https://api.aspose.cloud/v3.0/pdf/FormDataTextBox.pdf/fields/combobox
บทสรุป
ตามที่อธิบายไว้ในบทความด้านบน การประมวลผลฟิลด์ฟอร์มนั้นง่ายมากด้วยความช่วยเหลือของ Cloud API คุณอาจลองอ่านบล็อกที่เกี่ยวข้อง Form Parser | Form Recognizer | PDF Filling | Automate form processing with REST Web API