Chèn trường
Có một số cách khác nhau để chèn các trường vào tài liệu:
- sử dụng DocumentBuilder
- sử dụng FieldBuilder
- sử dụng Aspose.Words Document Object Model (DOM)
Trong bài viết này, chúng tôi sẽ xem xét từng cách chi tiết hơn và phân tích cách chèn các trường nhất định bằng các tùy chọn này.
Chèn trường vào tài liệu bằng DocumentBuilder
Trong Aspose.Words, phương thức insert_field được sử dụng để chèn các trường mới vào tài liệu. Tham số đầu tiên chấp nhận mã trường đầy đủ của trường sẽ được chèn vào. Tham số thứ hai là tùy chọn và cho phép đặt kết quả trường của trường theo cách thủ công. Nếu điều này không được cung cấp thì trường này sẽ được cập nhật tự động. Bạn có thể chuyển null hoặc trống cho tham số này để chèn trường có giá trị trường trống. Nếu bạn không chắc chắn về cú pháp mã trường cụ thể, trước tiên hãy tạo trường bằng Microsoft Word và chuyển sang xem mã trường của nó.
Ví dụ về mã sau đây cho biết cách chèn trường hợp nhất vào tài liệu bằng DocumentBuilder:
Ví dụ về mã sau đây cho biết cách chèn trường hợp nhất với ngôn ngữ tiếng Đức vào tài liệu bằng DocumentBuilder:
Kỹ thuật tương tự được sử dụng để chèn các trường lồng trong các trường khác.
Ví dụ về mã sau đây cho thấy cách chèn các trường lồng nhau trong một trường khác bằng DocumentBuilder:
Chỉ định ngôn ngữ ở cấp trường
Mã định danh ngôn ngữ là chữ viết tắt bằng số quốc tế tiêu chuẩn cho ngôn ngữ ở một quốc gia hoặc khu vực địa lý. Với Aspose.Words, bạn có thể chỉ định Ngôn ngữ ở cấp trường. Thuộc tính locale_id nhận hoặc đặt ID ngôn ngữ của trường.
Ví dụ mã sau đây cho thấy cách sử dụng tùy chọn này:
Chèn trường chưa gõ/trống
Nếu bạn muốn chèn các trường không được gõ/trống ({}) giống như Microsoft Word cho phép, bạn có thể sử dụng phương thức insert_field với tham số FieldType.FIELD_NONE. Để chèn một trường vào tài liệu Word, bạn có thể nhấn tổ hợp phím “Ctrl + F9”.
Ví dụ mã sau đây cho thấy cách chèn một trường trống vào tài liệu:
Chèn trường vào tài liệu bằng FieldBuilder
Cách khác để chèn các trường trong Aspose.Words là lớp FieldBuilder. Nó cung cấp giao diện trôi chảy để chỉ định các chuyển đổi trường và giá trị đối số dưới dạng văn bản, nút hoặc thậm chí các trường lồng nhau.
Ví dụ mã sau đây cho biết cách chèn một trường vào tài liệu bằng FieldBuilder:
Chèn trường bằng DOM
Bạn cũng có thể chèn nhiều loại trường khác nhau bằng Aspose.Words Document Object Model (DOM). Trong phần này, chúng ta sẽ xem xét một vài ví dụ.
Chèn trường hợp nhất vào tài liệu bằng DOM
Trường MERGEFIELD
trong tài liệu Word có thể được biểu thị bằng lớp FieldMergeField. Bạn có thể sử dụng lớp FieldMergeField để thực hiện các thao tác sau:
- chỉ định tên của trường hợp nhất
- chỉ định định dạng của trường hợp nhất
- chỉ định văn bản nằm giữa dấu phân cách trường và phần cuối trường của trường hợp nhất
- chỉ định văn bản sẽ được chèn sau trường hợp nhất nếu trường không trống
- chỉ định văn bản sẽ được chèn trước trường hợp nhất nếu trường không trống
Ví dụ về mã sau đây cho biết cách thêm Trường Merge
bằng DOM vào một đoạn trong tài liệu:
Chèn trường Mail Merge ADDRESSBLOCK
vào Tài liệu bằng DOM
Trường ADDRESSBLOCK
được sử dụng để chèn khối địa chỉ mail merge trong tài liệu Word. Trường ADDRESSBLOCK
trong tài liệu Word có thể được biểu diễn bằng lớp FieldAddressBlock. Bạn có thể sử dụng lớp FieldAddressBlock để thực hiện các thao tác sau:
- chỉ định xem có đưa tên quốc gia/khu vực vào trường này hay không
- chỉ định có định dạng địa chỉ theo quốc gia/khu vực của người nhận như được xác định bởi POST*CODE (Universal Postal Union 2006)
- chỉ định tên quốc gia/khu vực bị loại trừ
- chỉ định định dạng tên và địa chỉ
- chỉ định ID ngôn ngữ được sử dụng để định dạng địa chỉ
Ví dụ về mã sau đây cho biết cách thêm Trường Mail Merge ADDRESSBLOCK
bằng DOM vào một đoạn trong tài liệu:
Chèn trường ADVANCE
vào Tài liệu mà không cần sử dụng DocumentBuilder
Trường ADVANCE
được sử dụng để bù văn bản tiếp theo trong một dòng sang trái, phải, lên hoặc xuống. Trường ADVANCE
trong tài liệu Word có thể được biểu thị bằng lớp FieldAdvance. Bạn có thể sử dụng lớp FieldAdvance để thực hiện các thao tác sau:
- chỉ định số điểm mà văn bản theo sau trường sẽ được di chuyển theo chiều dọc từ cạnh trên của trang
- chỉ định số điểm mà văn bản theo sau trường sẽ được di chuyển theo chiều ngang từ cạnh trái của cột, khung hoặc hộp văn bản
- chỉ định số điểm mà văn bản theo sau trường sẽ được di chuyển sang trái, phải, lên hoặc xuống
Ví dụ về mã sau đây cho biết cách thêm Trường ADVANCE
bằng DOM vào một đoạn trong tài liệu.
Chèn trường ASK
vào Tài liệu mà không cần sử dụng DocumentBuilder
Trường ASK
được sử dụng để nhắc người dùng gán văn bản cho Dấu trang trong tài liệu Word. Trường ASK
trong tài liệu Word có thể được biểu thị bằng lớp FieldAsk. Bạn có thể sử dụng lớp FieldAsk để thực hiện các thao tác sau:
- chỉ định tên của dấu trang
- chỉ định phản hồi mặc định của người dùng (giá trị ban đầu có trong cửa sổ nhắc)
- chỉ định xem có nên nhận phản hồi của người dùng một lần cho mỗi thao tác mail merge hay không
- chỉ định văn bản nhắc (tiêu đề của cửa sổ nhắc)
Ví dụ về mã sau đây cho biết cách thêm Trường ASK
bằng DOM vào một đoạn trong tài liệu:
Chèn trường AUTHOR
vào Tài liệu mà không cần sử dụng DocumentBuilder
Trường AUTHOR
được sử dụng để chỉ định tên tác giả của Tài liệu từ thuộc tính Document
. Trường AUTHOR
trong tài liệu Word có thể được biểu diễn bằng lớp FieldAuthor. Bạn có thể sử dụng lớp FieldAuthor để thực hiện các thao tác sau:
- chỉ định tên tác giả tài liệu
Ví dụ về mã sau đây cho biết cách thêm Trường AUTHOR
bằng DOM vào một đoạn trong tài liệu:
Chèn trường INCLUDETEXT
vào Tài liệu mà không cần sử dụng DocumentBuilder
Trường INCLUDETEXT
chèn văn bản và đồ họa có trong tài liệu có tên trong mã trường. Bạn có thể chèn toàn bộ tài liệu hoặc một phần tài liệu được tham chiếu bằng dấu trang. Trường này trong tài liệu Word được biểu thị bằng INCLUDEEXT. Bạn có thể sử dụng lớp FieldIncludeText để thực hiện các thao tác sau:
- chỉ định tên dấu trang của tài liệu đi kèm
- xác định vị trí của tài liệu
Ví dụ về mã sau đây cho biết cách thêm trường INCLUDETEXT
bằng DOM vào một đoạn trong tài liệu:
Chèn trường TOA
vào Tài liệu mà không cần sử dụng DocumentBuilder
Trường TOA
(Bảng cơ quan có thẩm quyền) xây dựng và chèn một bảng cơ quan có thẩm quyền. Trường TOA
thu thập các mục nhập được đánh dấu bằng các trường TA
(Bảng mục nhập chính quyền). Microsoft Office Word chèn trường TOA
khi bạn nhấp vào Chèn bảng quyền hạn trong nhóm Bảng quyền hạn trên tab References. Khi bạn xem trường TOA
trong tài liệu của mình, cú pháp sẽ như sau:
{ TOA
[Switches ] }
Bạn có thể sử dụng lớp FieldToa để thực hiện các thao tác với trường TOA
.
Ví dụ về mã sau đây cho biết cách thêm trường TOA
bằng DOM vào một đoạn trong tài liệu: