xem trước biểu mẫu pdf

Trường biểu mẫu là một trong những thành phần không thể thiếu khi xử lý dữ liệu khách hàng và việc phân phối các biểu mẫu Acro PDF cho người dùng trở nên dễ dàng để họ có thể điền dữ liệu theo lựa chọn của mình vào biểu mẫu và gửi lại. Chúng ta đã quen với việc có thể sử dụng nhiều trường biểu mẫu khác nhau nhưng trong số đó, TextBox, CheckBox, RadioButton và ComboBox là rất phổ biến. Vì vậy, sau khi dữ liệu đã được điền vào biểu mẫu Acro, chúng ta phân tích các trường biểu mẫu tại văn phòng phụ trợ để trích xuất dữ liệu từ chúng và lưu chúng vào FDF, XML hoặc trực tiếp vào cơ sở dữ liệu.

Mặc dù tất cả các hoạt động bao gồm PDF tạo biểu mẫu, thêm trường biểu mẫu, cập nhật trường biểu mẫu có thể được thực hiện thủ công, nhưng khi xử lý một tập hợp lớn các tài liệu, hoạt động thủ công dường như không khả thi vì tốn thời gian và dễ xảy ra lỗi do xử lý dữ liệu thủ công. Vì vậy, các quy trình tự động thông qua ngôn ngữ lập trình có thể là một giải pháp khả thi. Do đó, khi tạo chương trình, chúng ta có tùy chọn sử dụng giải pháp/API tại chỗ có thể giúp chúng ta hoàn thành tất cả các yêu cầu hoặc sử dụng API REST được lưu trữ trên đám mây để phân tích cú pháp các trường biểu mẫu.

Lợi ích của REST API

Các API RESTful có bước tiến vượt bậc ở đây vì bạn không cần phải theo dõi thủ công tất cả các phiên bản API. Ngoài ra, bạn không cần phải cập nhật hệ thống của mình với các phiên bản API và không cần phải lo lắng về các vấn đề tương thích của các API với một ngôn ngữ lập trình nhất định, v.v. Do đó, chúng tôi giới thiệu Aspose.PDF Cloud SDK cho Java cung cấp các khả năng tạo, thao tác cũng như chuyển đổi các tài liệu PDF sang các định dạng tệp được hỗ trợ khác. Java SDK được phát triển trên các API REST của Aspose.PDF Cloud có thể dễ dàng truy cập bằng các lệnh cURL và các SDK được phát triển để tạo điều kiện thuận lợi cho khách hàng của chúng tôi sử dụng một ngôn ngữ lập trình cụ thể.

Trong blog này, chúng tôi sẽ hướng dẫn cách phân tích các trường biểu mẫu khác nhau:

Đọc, Thêm hoặc cập nhật các trường TextBox

API cung cấp ba cách để đọc thông tin liên quan đến trường TextBox.

| API | Loại | Mô tả | Liên kết Swagger |

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

| /pdf/{name}/fields/textbox | GET | Đọc các trường TextBox của tài liệu | GetDocumentTextBoxFields |

| /pdf/{name}/page/{pageNumber}/fields/textbox | GET | Đọc các trường TextBox của tài liệu cho một trang nhất định | GetPageTextBoxFields |

| /pdf/{name}/fields/textbox/{fieldName} | GET | Đọc các trường TextBox của tài liệu theo tên trường | GetTextBoxField |

lệnh cURL để đọc các trường TextBox

Vì các tập tin được lưu trữ trên bộ nhớ đám mây cá nhân của bạn nên trước tiên bạn cần tạo mã xác thực JWT yêu cầu ID khách hàng và Bí mật khách hàng được cá nhân hóa của bạn.

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

Mẫu FormDataTextBox.pdf được sử dụng trong ví dụ trên.

Java

// Để biết ví dụ đầy đủ và tệp dữ liệu, vui lòng truy cập 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";
    // tạo một thể hiện của đối tượng PdfAPi
    com.aspose.asposecloudpdf.api.PdfApi pdf = new com.aspose.asposecloudpdf.api.PdfApi(clientSecret,clientID);
    // Đọc các trường TextBox của tài liệu
    TextBoxFieldsResponse response = pdf.getDocumentTextBoxFields("FormDataTextBox.pdf",null, null);
    // in các chi tiết liên quan đến các trường đã lấy
    System.out.println(response.getFields());
    }
}

Phân tích các trường biểu mẫu CheckBox

Khi xử lý CheckBox, API cũng cung cấp khả năng đọc giá trị CheckBox, thêm hộp kiểm mới hoặc cập nhật các thuộc tính liên quan đến hộp kiểm hiện có trên biểu mẫu PDF.

lệnh cURL để đọc CheckBox trên trang 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>"

Lệnh CURL để cập nhật CheckBox trên Trang 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\"}"

Yêu cầu URL

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

Java

// Để biết ví dụ đầy đủ và tệp dữ liệu, vui lòng truy cập 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 {
    
    // tạo một thể hiện của đối tượng PdfAPi
    com.aspose.asposecloudpdf.api.PdfApi pdf = new com.aspose.asposecloudpdf.api.PdfApi(clientSecret,clientID);
    // Tạo phiên bản CheckBox
    CheckBoxField updatedCheckBox = new CheckBoxField();
    updatedCheckBox.partialName("Check Box1");
    updatedCheckBox.height(12.0);
    updatedCheckBox.width(12.0);
    // đặt kiểu hộp kiểm là Diamond
    updatedCheckBox.style(com.aspose.asposecloudpdf.model.BoxStyle.DIAMOND);
    updatedCheckBox.activeState("On");
    // kích hoạt giá trị hộp kiểm
    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);
    // chỉ định chi tiết chỉ mục trang
    updatedCheckBox.pageIndex(1);

    // thiết lập chi tiết kiểu đường viền CheckBox
    Border border = new Border();
    border.width(1);
    border.style(com.aspose.asposecloudpdf.model.BorderStyle.SOLID);
    border.effect(com.aspose.asposecloudpdf.model.BorderEffect.NONE);
    // Đối tượng màu cho đường viền
    Color color = new Color();
    color.setR(120);
    color.setG(220);
    color.setB(10);
    // đặt màu viền CheckBox
    border.color(color);
    // gọi phương thức để cập nhật trường hộp kiểm trên trang 1
    CheckBoxFieldResponse response =  pdf.putCheckBoxField("FormDataTextBox.pdf", "Check Box1", updatedCheckBox,null,null);
    // in mã trạng thái phản hồi
    System.out.print(response.getStatus());
    }
}

Sau khi lệnh/mã được thực thi, các thuộc tính liên quan đến trường hộp kiểm 1 sẽ được cập nhật như hình ảnh bên dưới.

Xem trước trường hộp kiểm đã cập nhật

Hình ảnh 1:- Xem trước hộp kiểm đã cập nhật 1 bằng lệnh cURL

Thêm hoặc cập nhật các trường RadioButton

Tương tự như các trường TextBox và CheckBox, Cloud SDK cũng cung cấp khả năng đọc và cập nhật các trường RadioButton trên tài liệu PDF.

lệnh cURL để đọc các trường RadioButton trên tài liệu PDF

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

Yêu cầu URL

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

Thao tác các trường biểu mẫu ComboBox

Lưu ý rằng thao tác ComboBox trở nên rất tiện dụng với sự trợ giúp của Aspose.PDF Cloud SDK for Java. Bạn có tùy chọn đọc các trường ComboBox hiện có trên tài liệu, thêm trường ComboBox mới hoặc cập nhật ComboBox hiện có.

lệnh cURL để đọc tất cả các trường ComboBox

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

Yêu cầu URL

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

Phần kết luận

Như đã giải thích trong bài viết trên, việc xử lý các trường Form đã trở nên khá dễ dàng với sự trợ giúp của Cloud API. Bạn có thể cân nhắc đọc qua blog liên quan Form Parser | Form Recognizer | PDF Filling | Automate form processing with REST Web API.