chú thích

A quick view of MS Word document transformation.

Tiêu đề là lề trên cùng của mỗi trang và chân trang là lề dưới cùng của mỗi trang. Tiêu đề và chân trang hữu ích để đưa thông tin mà bạn muốn hiển thị trên mọi trang của tài liệu như tên, ngày tháng, tiêu đề tài liệu, số trang hoặc tuyên bố miễn trừ trách nhiệm đối với tài liệu. Khi sử dụng MS Word, nó cung cấp khả năng thêm Tiêu đề và Chân trang dựa trên các bố cục được xác định trước hoặc cho phép bạn thêm tiêu đề và chân trang tùy chỉnh. Hầu hết các tiêu đề tích hợp đều chứa một số văn bản giữ chỗ và bạn có thể giữ nguyên văn bản giữ chỗ hoặc thay thế bằng nguồn cấp dữ liệu của riêng bạn. Ngoài ra, khi cập nhật thông tin trong phần Tiêu đề hoặc Chân trang, nội dung bên trong phần chính của tài liệu sẽ chuyển sang màu xám, cho biết các đối tượng này hoàn toàn tách biệt với phần còn lại của nội dung trang và thao tác bạn thực hiện trên các đối tượng này là dành riêng cho các khu vực này. Trong bài viết này, chúng ta sẽ tìm hiểu các bước về cách thêm hoặc cập nhật tiêu đề và chân trang trong Tài liệu Word bằng REST API.

API xử lý văn bản

Aspose.Words Cloud API cung cấp khả năng tải các tệp MS Word từ bộ lưu trữ đám mây, cũng như cho phép người dùng truyền tệp đầu vào trực tiếp trong phần thân yêu cầu và API trả về tệp đã cập nhật trong đối tượng phản hồi. Nó cung cấp các tính năng Đọc, Thêm, Cập nhật hoặc Xóa các đối tượng Header và Footer cụ thể hoặc tất cả. Ngoài ra, bạn cũng có thể chỉ định hiển thị các header/footer khác nhau cho trang đầu tiên và cho các trang lẻ/chẵn.

Hơn nữa, API cũng cho phép bạn thiết lập thông tin định dạng như phông chữ và thuộc tính đoạn văn cho văn bản đầu trang/chân trang. Bạn cũng có thể chèn số trang động vào phần đầu trang/chân trang. Cuối cùng nhưng không kém phần quan trọng, bạn có thể cân nhắc sử dụng đối tượng bảng để căn chỉnh một phần của văn bản đầu trang/chân trang sang cạnh trái và phần còn lại sang cạnh phải.

Phạm vi của bài viết

Aspose.Words Cloud SDK for .NET của chúng tôi cho phép bạn làm việc với Aspose.Words Cloud REST APIs một cách nhanh chóng và dễ dàng, vì nó xử lý rất nhiều chi tiết cấp thấp liên quan đến việc tạo yêu cầu và xử lý phản hồi và cho phép bạn tập trung vào việc viết mã cụ thể cho các yêu cầu kinh doanh của mình. Trong bài viết này, chúng ta sẽ sử dụng Aspose.Words Cloud SDK for .NET trong Visual Studio dành cho Mac. Bài đăng này định nghĩa các bước để chèn Header Footer vào Tài liệu Word, nơi định dạng tùy chỉnh sẽ được xác định. Sau đó, định dạng của nội dung Footer hiện có được cập nhật và thông tin PageNumber được chèn vào vị trí Dưới cùng bên phải. Tất cả các thao tác này sẽ được thực hiện trên đám mây.

Cài đặt

Để bắt đầu, trước tiên, bạn cần cài đặt Visual Studio trên hệ thống của mình. Tạo một giải pháp mẫu và thêm tham chiếu NuGet của Aspose.Words Cloud SDK cho .NET. Vì vậy, để thêm tham chiếu, hãy nhấp chuột phải vào giải pháp và chọn tùy chọn menu Manage NuGet Packages… (Quản lý các gói NuGet).Nhập Aspose.Words-Cloud vào trường văn bản tìm kiếm. Chọn tùy chọn và nhấp vào nút Add package (Thêm gói).

Bây giờ tham chiếu Aspose.Words.Cloud.Sdk xuất hiện trong giải pháp. Có một số lợi ích khi sử dụng API đám mây trái ngược với API tại chỗ (aspose.com).Lý do là bạn không cần phải theo dõi và cập nhật thủ công các phiên bản API và bạn không cần phải trả tiền cho toàn bộ giấy phép.

Bảng điều khiển Aspose.Cloud

Chỉ cần tạo một tài khoản trên bảng điều khiển Aspose.Cloud hoặc đăng ký thông qua tài khoản Google hoặc GitHub hiện tại của bạn và bắt đầu sử dụng Cloud API của chúng tôi. Một tính năng tuyệt vời khác của Cloud API là bạn có thể sử dụng chúng trên bất kỳ nền tảng nào bằng bất kỳ ngôn ngữ nào được hỗ trợ.

Như đã nêu ở trên, bài viết nhấn mạnh các tùy chọn liên quan đến việc thêm và cập nhật các đối tượng Header và Footer bên trong tài liệu MS Word. Để thử nghiệm, chúng tôi đã sử dụng một mẫu tài liệu MS Word hiện có có tên là Business Letter. Tài liệu cần được tải lên bộ lưu trữ đám mây Aspose và tất cả các thao tác và xử lý tài liệu sẽ được thực hiện trên đám mây. Sau khi tất cả quá trình xử lý hoàn tất, chúng tôi cũng có thể tải xuống bản sao tệp kết quả từ bộ lưu trữ Cloud.

using Aspose.Words.Cloud.Sdk;
using Aspose.Words.Cloud.Sdk.Model;
using Aspose.Words.Cloud.Sdk.Model.Requests;

Bây giờ để sử dụng API Aspose.Cloud, bạn cần sử dụng thông tin App Key và App SID trong mã của mình. Các khóa này bao gồm các chữ số chữ cái. Đây là các mã duy nhất được liên kết với tài khoản đăng ký của bạn. Để có được các thông tin chi tiết này, vui lòng nhấp vào tab My Apps trên bảng điều khiển Aspose.Cloud. Sau khi có Key, chúng ta cần khởi tạo đối tượng API Aspose.Words.

string MyAppKey = "f6axxxxxxxxxxxxxxxxxx";     // Get AppKey and AppSID from https://dashboard.aspose.cloud/
string MyAppSid = "478e4827-xxxxx-xxxx-xxxx-xxxxxxx"; // Get AppKey and AppSID from https://dashboard.aspose.cloud/
// create an object of WordsApi while passing AppKey and AppSid information
WordsApi wordsApi = new WordsApi(MyAppKey, MyAppSid);

Chèn đối tượng Header

Để thêm đối tượng tiêu đề vào trong tệp MS Word, chúng ta cần thực hiện các thao tác sau theo trình tự.

  1. Tạo một đối tượng InsertHeaderFooterRequest trong đó chúng ta truyền kiểu HeaderFooterLink làm đối số.
  2. Chèn đối tượng HeaderFooterRequest vào đối tượng WordsApi bằng phương thức InsertHeaderFooter (…).
  3. Tạo đối tượng Run chứa thông tin mẫu Văn bản.
  4. Tạo đối tượng InsertRunRequest trong đó chúng ta truyền tham chiếu của đoạn văn (SectionPath) vào đối tượng HeaderFooter, nơi cần thêm văn bản Run.
    Sau đó gọi phương thức InsertRun (…) của WordsApi để thêm RunRequest vào đối tượng HeaderFooter.

HeaderFooter.TypeEnum có thể là một trong các giá trị sau.

string MyAppKey = "xxxxxxxx";    // Get AppKey and AppSID from https://dashboard.aspose.cloud/
string MyAppSid = "xxxxxxxxx";   // Get AppKey and AppSID from https://dashboard.aspose.cloud/
// tạo một đối tượng của WordsAPI trong khi truyền thông tin AppKey và AppSid
WordsApi wordsApi = new WordsApi(MyAppKey, MyAppSid);

// tải tài liệu mẫu lên lưu trữ đám mây
wordsApi.UploadFile(new UploadFileRequest(new System.IO.FileStream("/Users/nayyershahbaz/Documents/BusinessLetter.docx", 
    FileMode.Open, FileAccess.Read), "BusinessLetter.docx"));

// Chèn Đối tượng Tiêu đề vào trang đầu tiên
var putHeaderFooterRequest = new Aspose.Words.Cloud.Sdk.Model.Requests.InsertHeaderFooterRequest("BusinessLetter.docx", "HeaderFirst", null,null);  
var actual = wordsApi.InsertHeaderFooter(putHeaderFooterRequest);
// Tạo đối tượng Run chứa văn bản mẫu
var run = new Run { Text = "Aspose.Words Cloud SDK for .NET " };
// thêm văn bản Run vào đoạn văn đầu tiên của đối tượng HeaderFooter đầu tiên trong phần đầu tiên của tài liệu Word
var runRequest = new Aspose.Words.Cloud.Sdk.Model.Requests.InsertRunRequest("BusinessLetter.docx", "sections/0/headersfooters/1/paragraphs/0", run);
// Chèn RunRequest vào Tài liệu Word
var actual2 = wordsApi.InsertRun(runRequest);
chú thích

Image showing preview of recently added Header

Cập nhật định dạng văn bản của Tiêu đề mới chèn

Sau khi đối tượng Header được thêm vào, chúng ta có thể cập nhật định dạng văn bản của nội dung bên trong nó. Để đáp ứng yêu cầu này, chúng ta cần thực hiện các bước sau.

  1. Tạo một đối tượng của lớp Font, trong đó chúng ta chỉ định tên phông chữ, kích thước, thông tin màu sắc.
  2. Để làm cho văn bản dễ nhìn hơn, hãy đánh dấu thuộc tính Engrave là True.
  3. Tạo một đối tượng của lớp UpdateRunFontRequest trong đó chúng ta truyền tệp đầu vào, Font, SectionPath và runIndex làm đối số.
  4. Cuối cùng, sử dụng phương thức UpdateRunFont(..) và thêm đối tượng UpdateRunFontRequest vào thể hiện WordsApi.
string MyAppKey = "xxxxxxxx";    // Get AppKey and AppSID from https://dashboard.aspose.cloud/
string MyAppSid = "xxxxxxxxx";   // Get AppKey and AppSID from https://dashboard.aspose.cloud/
// tạo một đối tượng của WordsAPI trong khi truyền thông tin AppKey và AppSid
WordsApi wordsApi = new WordsApi(MyAppKey, MyAppSid);

// tải tài liệu mẫu lên lưu trữ đám mây
wordsApi.UploadFile(new UploadFileRequest(new System.IO.FileStream("/Users/nayyershahbaz/Documents/BusinessLetter.docx", 
    FileMode.Open, FileAccess.Read), "BusinessLetter.docx"));

// Bước tiếp theo là thiết lập định dạng của Đối tượng Tiêu đề
var runIndex = 0;
var fontDto = new Font { Bold = true, Name = "Verdana", Size = 16, Color = new XmlColor { Web = "#e0a50d" } };
//  Đặt định dạng văn bản thành Engrave
fontDto.Engrave = true;
// Áp dụng định dạng cho đoạn văn đầu tiên của đối tượng HeaderFooter
var documentParagraphRunFontRequest = new Aspose.Words.Cloud.Sdk.Model.Requests.UpdateRunFontRequest("BusinessLetter.docx",
    fontDto, "sections/0/headersfooters/1/paragraphs/0", runIndex);
var actual4 = wordsApi.UpdateRunFont(documentParagraphRunFontRequest);
chú thích

Image showing preview of Header after text formatting has been applied.

API cũng cung cấp tính năng cập nhật định dạng nội dung bên trong đối tượng Header/Footer hiện có. Để đáp ứng yêu cầu này, chúng ta có thể sử dụng các dòng mã được chỉ định ở trên nhưng điểm khác biệt duy nhất là thay đổi chỉ mục headerfooter thành 2. Xem dòng mã sau.

// Apply formatting to first paragraph of HeaderFooter object
var FooterDocumentParagraphRunFontRequest = new Aspose.Words.Cloud.Sdk.Model.Requests.UpdateRunFontRequest("BusinessLetter.docx", 
FooterFontDto, "sections/0/headersfooters/2/paragraphs/0", FooterrunIndex);
chú thích

Image displaying the change in Footer text formatting.

Số trang cung cấp thông tin rất hữu ích như trang hiện tại và tổng số trang trong một tài liệu. Các bước sau đây xác định cách thực hiện các yêu cầu.

  1. Đầu tiên, tạo một đối tượng của lớp PageNumber, trong đó chúng ta định nghĩa Căn chỉnh văn bản, định dạng của văn bản, vị trí hiển thị thông tin PageNumber và cũng chỉ định xem PageNumber có cần được hiển thị trên trang đầu tiên hay không.
  2. Tạo đối tượng InsertPageNumbersRequest và truyền đối tượng PageNumber làm đối số.
  3. Cuối cùng, gọi phương thức InsertPageNumbers(..) để thêm InsertPageNumbersRequest vào thể hiện WordsApi.
string MyAppKey = "xxxxxxxx";    // Get AppKey and AppSID from https://dashboard.aspose.cloud/
string MyAppSid = "xxxxxxxxx";   // Get AppKey and AppSID from https://dashboard.aspose.cloud/
// tạo một đối tượng của WordsAPI trong khi truyền thông tin AppKey và AppSid
WordsApi wordsApi = new WordsApi(MyAppKey, MyAppSid);

// tải tài liệu mẫu lên lưu trữ đám mây
wordsApi.UploadFile(new UploadFileRequest(new System.IO.FileStream("/Users/nayyershahbaz/Documents/BusinessLetter.docx", 
    FileMode.Open, FileAccess.Read), "BusinessLetter.docx"));

// API cũng cung cấp tính năng thêm chi tiết Số trang vào đối tượng HeaderFooter
// Thêm thông tin số trang vào góc phải dưới cùng của trang
var body = new PageNumber { Alignment = "right", Format = "{PAGE} of {NUMPAGES}", IsTop = false, SetPageNumberOnFirstPage = true };
var insertPageNumbersRequest = new Aspose.Words.Cloud.Sdk.Model.Requests.InsertPageNumbersRequest("BusinessLetter.docx", body);
// Chèn thông tin PageNumber vào tài liệu Word
var actual6 = wordsApi.InsertPageNumbers(insertPageNumbersRequest);
chú thích

Preview Page number in the footer section.

Phần kết luận

Trong bài viết này, chúng ta đã tìm hiểu các bước về cách thêm Header Footer vào Word Document bằng cách sử dụng Aspose.Words Cloud SDK for .NET. Xin lưu ý rằng chúng tôi cũng có Cloud SDK dành cho Java, PHP, Ruby, Python, Go, Swift, C++, Node.Js, Android. Để biết thêm chi tiết, vui lòng truy cập Aspose.Words Cloud.

Bài viết liên quan

Chúng tôi cũng khuyên bạn nên truy cập vào trang sau để tìm hiểu thêm về