Hướng dẫn ngắn này mô tả quy trình trích xuất dữ liệu từ biểu mẫu PDF bằng Java. Nó chia sẻ chi tiết về cách cài đặt IDE, cung cấp danh sách các bước để viết chương trình và mã mẫu minh họa cách xuất dữ liệu từ biểu mẫu PDF bằng Java. Các chi tiết được trình bày để truy cập tất cả hoặc các trường được chọn từ biểu mẫu và xử lý theo yêu cầu.
Các bước để trích xuất dữ liệu từ các trường biểu mẫu PDF bằng Java
- Cài đặt IDE để sử dụng Aspose.PDF for Java để trích xuất dữ liệu biểu mẫu
- Tạo một tệp PDF với các trường Textbox và dữ liệu mẫu
- Tải tệp PDF chứa biểu mẫu và các trường nhập liệu vào đối tượng Document
- Truy cập tập hợp các trường trong biểu mẫu từ tài liệu đã tải
- Duyệt qua tất cả các trường và lấy tên đầy đủ cùng giá trị để hiển thị trên console
Các bước này giải thích cách trích xuất các trường biểu mẫu từ PDF bằng Java. Tạo một tệp PDF chứa các trường biểu mẫu và dữ liệu mẫu hoặc tải một tệp hiện có chứa dữ liệu biểu mẫu. Truy cập tập hợp các trường từ thuộc tính Form của tài liệu, duyệt qua tất cả các trường và hiển thị các thuộc tính mong muốn.
Mã để trích xuất dữ liệu từ biểu mẫu PDF có thể điền bằng Java
import com.aspose.pdf.*; | |
public class Main { | |
public static void main(String[] args) throws Exception { | |
// Load Aspose PDF license | |
License license = new License(); | |
license.setLicense("license.lic"); | |
// Generate PDF with input fields | |
createPdfWithFields(); | |
// Open and process the generated PDF file | |
Document pdfDocument = new Document("UserForm.pdf"); | |
// Retrieve and display form fields | |
Field[] formFields = pdfDocument.getForm().getFields(); | |
for (Field formField : formFields) { | |
System.out.println("Field Name: " + formField.getFullName()); | |
System.out.println("Field Content: " + formField.getValue()); | |
} | |
// Release resources | |
pdfDocument.close(); | |
} | |
private static void createPdfWithFields() { | |
// Instantiate new PDF document | |
Document pdfFile = new Document(); | |
for (int pageIndex = 1; pageIndex <= 3; pageIndex++) { | |
Page newPage = pdfFile.getPages().add(); | |
for (int fieldIndex = 1; fieldIndex <= 4; fieldIndex++) { | |
// Define a text input field | |
TextBoxField inputField = new TextBoxField(newPage, | |
new Rectangle(120, fieldIndex * 90, 320, (fieldIndex + 1) * 90)); | |
inputField.setPartialName("inputField_" + pageIndex + "_" + fieldIndex); | |
inputField.setValue("Data Entry " + pageIndex + "-" + fieldIndex); | |
// Attach field to the document form | |
pdfFile.getForm().add(inputField, pageIndex); | |
} | |
} | |
// Save document to disk | |
pdfFile.save("UserForm.pdf"); | |
// Free resources | |
pdfFile.close(); | |
} | |
} |
Mã này đã minh họa cách trích xuất dữ liệu từ biểu mẫu PDF bằng Java. Bạn có thể truy cập các thuộc tính khác nhau từ biểu mẫu, chẳng hạn như tên thay thế của trường, tên ánh xạ, nội dung, tên một phần, trạng thái hoạt động, tên trạng thái đã chọn, chỉ mục trang, v.v. Để truy cập chỉ các trường được chọn, hãy sử dụng chỉ mục trường, chẳng hạn như formFields[1].getValue()
để truy cập giá trị của trường đầu tiên.
Trong bài viết này, chúng tôi đã xử lý các biểu mẫu trong tệp PDF. Để trích xuất phông chữ từ tệp PDF, hãy tham khảo bài viết Trích xuất phông chữ từ PDF bằng Java.