Điền và đọc biểu mẫu XFA bằng C#

Adobe đã giới thiệu một Biểu mẫu tương tác và năng động được gọi là biểu mẫu XFA. XFA là viết tắt của Kiến trúc biểu mẫu XML. Biểu mẫu XFA tương tự như một tệp HTML. Nó chứa các trường có thể điền và xác định bố cục hoặc hình thức dưới dạng biểu mẫu được nhúng bên trong tài liệu PDF. Trong bài viết này, chúng ta sẽ tìm hiểu cách điền và đọc biểu mẫu XFA bằng C#.

Các chủ đề sau đây sẽ được đề cập trong bài viết này:

API C# để đọc và điền biểu mẫu XFA

Để làm việc với các biểu mẫu XFA PDF, chúng tôi sẽ sử dụng API Aspose.PDF for .NET. Nó cho phép chúng tôi tạo, sửa đổi, chuyển đổi, hiển thị, bảo mật và in tài liệu được hỗ trợ mà không cần sử dụng Adobe Acrobat. Vui lòng tải xuống DLL của API hoặc cài đặt nó bằng NuGet.

PM> Install-Package Aspose.Pdf

Điền vào biểu mẫu XFA bằng C#

Chúng tôi có thể điền vào biểu mẫu XFA theo chương trình bằng cách thực hiện theo các bước dưới đây:

  1. Đầu tiên, tải tệp biểu mẫu XFA bằng lớp Tài liệu.
  2. Nhận tên của các trường biểu mẫu XFA đã tải.
  3. Đặt giá trị trường.
  4. Cuối cùng, gọi phương thức Save(). Nó lấy đường dẫn của tệp đầu ra làm đối số.

Mẫu mã sau đây cho biết cách điền biểu mẫu XFA bằng C#.

// Ví dụ mã này trình bày cách điền vào biểu mẫu XFA.
// Tải biểu mẫu XFA
Document doc = new Document(@"C:\Files\PDF\FillXFAFields.pdf");

// Lấy tên của các trường biểu mẫu XFA
string[] names = doc.Form.XFA.FieldNames;

// Đặt giá trị trường
doc.Form.XFA[names[0]] = "12345";
doc.Form.XFA[names[1]] = "24/02/2022";
doc.Form.XFA[names[2]] = "Company Name";
doc.Form.XFA[names[3]] = "Company Address";
doc.Form.XFA[names[4]] = "Company City";
doc.Form.XFA[names[5]] = "Canada";
doc.Form.XFA[names[6]] = "Alberta";
doc.Form.XFA[names[7]] = "T9S";
doc.Form.XFA[names[8]] = "+112345567";
doc.Form.XFA[names[10]] = "Mr. John Smith";
doc.Form.XFA[names[11]] = "Delivered to Company Name";
doc.Form.XFA[names[12]] = "Delivery Company Address";
doc.Form.XFA[names[13]] = "Delivery City";
doc.Form.XFA[names[17]] = "+123456789";
doc.Form.XFA[names[19]] = "Mr. Will Smith";
doc.Form.XFA[names[22]] = "57251";

// Lưu biểu mẫu
doc.Save(@"C:\Files\PDF\Filled_XFA_out.pdf");
Điền vào Biểu mẫu XFA bằng C#.

Điền vào Biểu mẫu XFA bằng C#.

Đọc biểu mẫu XFA bằng C#

Chúng ta có thể đọc biểu mẫu XFA đã điền bằng cách thực hiện theo các bước dưới đây:

  1. Đầu tiên, tải tệp Excel bằng lớp Tài liệu.
  2. Nhận tên của các trường biểu mẫu XFA đã tải.
  3. Trong một vòng lặp, lấy thông tin chi tiết về trường bằng phương thức GetFieldTemplate().
  4. Cuối cùng, hiển thị thuộc tính trường.

Mẫu mã sau đây cho biết cách đọc biểu mẫu XFA đã điền bằng C#.

// Ví dụ mã này trình bày cách đọc biểu mẫu XFA đã điền.
// Tải biểu mẫu XFA
Document doc = new Document(@"C:\Files\PDF\Filled_XFA_out.pdf");

// Lấy tên của các trường biểu mẫu XFA
string[] names = doc.Form.XFA.FieldNames;

for (int count=0; count<names.Length; count++)
{
    // Nhận thông tin chi tiết trường
    var field = doc.Form.XFA.GetFieldTemplate(names[count]);
    string fieldName = doc.Form.XFA.GetFieldTemplate(names[count]).InnerText;
    string fieldValue = doc.Form.XFA[names[count]];

    if (!string.IsNullOrEmpty(fieldValue) && fieldValue != "0")
    {
        Console.WriteLine("Field Name : " + field.Attributes["name"].Value);
        Console.WriteLine("Field Description : " + fieldName);
        Console.WriteLine("Field Value : " + fieldValue);
        Console.WriteLine();
    }
}
Đọc biểu mẫu XFA đã điền bằng C#.

Đọc biểu mẫu XFA đã điền bằng C#.

Nhận giấy phép miễn phí

Vui lòng dùng thử API không có giới hạn đánh giá bằng cách yêu cầu giấy phép tạm thời miễn phí.

Phần kết luận

Trong bài viết này, chúng ta đã học cách điền vào biểu mẫu XFA mà không cần sử dụng Adobe writer. Chúng ta cũng đã thấy cách đọc biểu mẫu XFA đã điền theo chương trình. Ngoài ra, bạn có thể tìm hiểu thêm về Aspose.PDF for .NET API bằng tài liệu. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn.

Xem thêm