Tạo tài liệu PDF bằng C#

PDF là một định dạng tài liệu độc lập với nền tảng giúp giữ cho định dạng và bố cục nội dung nhất quán trên các hệ điều hành hoặc máy khác nhau. Đây là lý do các tổ chức khác nhau sử dụng định dạng PDF để tạo hóa đơn, biên lai, báo cáo và các tài liệu kinh doanh khác một cách linh hoạt. Aspose.PDF for .NET là một thư viện PDF giúp bạn triển khai tự động hóa PDF trong các ứng dụng .NET. Nó cho phép bạn tạo, chỉnh sửa, phân tích cú pháp và chuyển đổi các tệp PDF theo chương trình bằng C# hoặc VB.NET. Trong bài viết này, tôi sẽ đề cập đến các tính năng tạo PDF và chỉ cho bạn cách tạo tệp PDF từ đầu bằng C#.

Tôi sẽ bắt đầu bằng cách tạo một tài liệu PDF đơn giản và sau đó tiến hành thêm các yếu tố khác vào tài liệu. Sau đây là danh sách các tính năng tôi sẽ trình bày trong bài viết này.

Thư viện C# PDF - Cài đặt

Bạn có thể cài đặt Aspose.PDF for .NET bằng NuGet Package Manager hoặc Package Manager Console bằng lệnh sau. Ngoài ra, bạn có thể tải xuống từ phần Tải xuống.

Install-Package Aspose.Pdf

Tạo tệp PDF bằng C#

Trước tiên, hãy tạo một tài liệu PDF có chứa một đoạn văn bản. Sau đây là các bước để tạo một tài liệu PDF đơn giản từ đầu.

Mẫu mã sau đây cho biết cách tạo tệp PDF bằng C#.

// Tải tài liệu PDF 
Document document = new Document();

// Thêm trang
Aspose.Pdf.Page page = document.Pages.Add();

// Thêm văn bản vào trang mới
page.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment("Hello World! This is a new PDF generated by Aspose.PDF for .NET."));

// Lưu tài liệu PDF
document.Save("Generated-PDF.pdf");
tạo pdf bằng C#

Áp dụng định dạng văn bản trong PDF bằng C#

Bây giờ hãy xem cách thêm văn bản vào tài liệu PDF và sử dụng các tùy chọn định dạng khác nhau. Sau đây là các bước để thực hiện thao tác này.

  • Sử dụng lớp Document để tạo tài liệu PDF mới hoặc tải tài liệu hiện có.
  • Truy cập Trang mà bạn muốn đặt văn bản.
  • Tạo một đối tượng TextFragment và đặt văn bản cũng như các tùy chọn định dạng khác như vị trí, phông chữ, màu sắc, kích thước, v.v.
  • Sử dụng lớp TextBuilder để thêm đối tượng TextFragment vào trang.
  • Sử dụng phương pháp Document.Save() để tạo tài liệu PDF.

Mẫu mã sau đây cho biết cách thêm văn bản được định dạng vào tệp PDF bằng C#.

// Tải tài liệu PDF 
Document document = new Document();
// Thêm trang
Aspose.Pdf.Page page = document.Pages.Add();

// Tạo đoạn văn bản
TextFragment textFragment = new TextFragment("Text 1: We have now applied text formatting. This is PDF generated by Aspose.PDF for .NET");
textFragment.Position = new Position(100, 700);
TextFragment textFragment1 = new TextFragment("Text 2: We have now applied text formatting. This is PDF generated by Aspose.PDF for .NET");
textFragment1.Position = new Position(100, 600);

// Đặt thuộc tính văn bản
textFragment.TextState.FontSize = 12;
textFragment.TextState.Font = FontRepository.FindFont("TimesNewRoman");
textFragment.TextState.BackgroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray);
textFragment.TextState.ForegroundColor = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Red);

textFragment1.TextState.DrawTextRectangleBorder = true;
textFragment1.TextState.Underline = true;
textFragment1.TextState.StrikeOut = true;
// Tạo màu mới với không gian màu mẫu
textFragment1.TextState.ForegroundColor = new Aspose.Pdf.Color()
{
	PatternColorSpace = new Aspose.Pdf.Drawing.GradientAxialShading(Color.Red, Color.Blue)
};
// Tạo đối tượng TextBuilder
TextBuilder textBuilder = new TextBuilder(page);

// Nối các đoạn văn bản vào trang PDF
textBuilder.AppendText(textFragment);
textBuilder.AppendText(textFragment1);

// Lưu tài liệu PDF
document.Save("Generated-PDF.pdf");
tạo pdf với văn bản được định dạng bằng C#

Tạo PDF nhiều cột bằng C#

Chúng ta thường thấy văn bản trên báo chí, bài báo nghiên cứu và các loại tài liệu khác được chia thành hai hoặc nhiều cột. Để đạt được sự phân chia văn bản này, Aspose.PDF for .NET cho phép tạo một tệp PDF nhiều cột. Sau đây là các bước để tạo một tệp PDF nhiều cột.

Mẫu mã sau đây cho biết cách tạo tệp PDF nhiều cột bằng C#.

// Tải tài liệu PDF 
Document document = new Document();
// Chỉ định thông tin lề trái cho tệp PDF
document.PageInfo.Margin.Left = 40;
// Chỉ định thông tin lề phải cho tệp PDF
document.PageInfo.Margin.Right = 40;
Aspose.Pdf.Page page = document.Pages.Add();

// thêm một dòng
Aspose.Pdf.Drawing.Graph graph1 = new Aspose.Pdf.Drawing.Graph(500, 2);
// Thêm dòng vào bộ sưu tập diễn giải của đối tượng phần
page.Paragraphs.Add(graph1);

// Chỉ định tọa độ cho dòng
float[] posArr = new float[] { 1, 2, 500, 2 };
Aspose.Pdf.Drawing.Line l1 = new Aspose.Pdf.Drawing.Line(posArr);
graph1.Shapes.Add(l1);

// Thêm tiêu đề
// Tạo biến chuỗi với văn bản chứa thẻ html
string s = "<font face=\"Times New Roman\" size=4>" +
"<strong> How to Steer Clear of money scams</<strong> "
+ "</font>";

// Tạo đoạn văn bản chứa văn bản HTML
HtmlFragment heading_text = new HtmlFragment(s);
page.Paragraphs.Add(heading_text);

Aspose.Pdf.FloatingBox box = new Aspose.Pdf.FloatingBox();
// Thêm bốn cột trong phần
box.ColumnInfo.ColumnCount = 2;
// Đặt khoảng cách giữa các cột
box.ColumnInfo.ColumnSpacing = "5";
// Đặt độ rộng cột
box.ColumnInfo.ColumnWidths = "250 250"; 

// Tạo văn bản 
TextFragment text2 = new TextFragment(@"Sed augue tortor, sodales id, luctus et, pulvinar ut, eros. Suspendisse vel dolor. Sed quam. Curabitur ut massa vitae eros euismod aliquam. Pellentesque sit amet elit. Vestibulum interdum pellentesque augue. Cras mollis arcu sit amet purus. Donec augue. Nam mollis tortor a elit. Nulla viverra nisl vel mauris. Vivamus sapien. nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et,nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales. Sed augue tortor, sodales id, luctus et, pulvinar ut, eros. Suspendisse vel dolor. Sed quam. Curabitur ut massa vitae eros euismod aliquam. Pellentesque sit amet elit. Vestibulum interdum pellentesque augue. Cras mollis arcu sit amet purus. Donec augue. Nam mollis tortor a elit. Nulla viverra nisl vel mauris. Vivamus sapien. nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et,nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales. Sed augue tortor, sodales id, luctus et, pulvinar ut, eros. Suspendisse vel dolor. Sed quam. Curabitur ut massa vitae eros euismod aliquam. Pellentesque sit amet elit. Vestibulum interdum pellentesque augue. Cras mollis arcu sit amet purus. Donec augue. Nam mollis tortor a elit. Nulla viverra nisl vel mauris. Vivamus sapien. nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et,nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales. Sed augue tortor, sodales id, luctus et, pulvinar ut, eros. Suspendisse vel dolor. Sed quam. Curabitur ut massa vitae eros euismod aliquam. Pellentesque sit amet elit. Vestibulum interdum pellentesque augue. Cras mollis arcu sit amet purus. Donec augue. Nam mollis tortor a elit. Nulla viverra nisl vel mauris. Vivamus sapien. nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et,nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim Nam justo lorem, aliquam luctus, sodales et, semper sed, enim nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.nAenean posuere ante ut neque. Morbi sollicitudin congue felis. Praesent turpis diam, iaculis sed, pharetra non, mollis ac, mauris. Phasellus nisi ipsum, pretium vitae, tempor sed, molestie eu, dui. Duis lacus purus, tristique ut, iaculis cursus, tincidunt vitae, risus. Sed commodo. *** sociis natoque penatibus et magnis dis parturient montes, nascetur ridiculus mus. Sed urna. . Duis convallis ultrices nisi. Maecenas non ligula. Nunc nibh est, tincidunt in, placerat sit amet, vestibulum a, nulla. Praesent porttitor turpis eleifend ante. Morbi sodales.");

// Thêm văn bản vào tài liệu
box.Paragraphs.Add(text2);
page.Paragraphs.Add(box);

// Lưu tài liệu PDF
document.Save("Generated-PDF.pdf");
tạo pdf nhiều cột bằng C#

Chèn hình ảnh vào PDF bằng C#

Các bước sau đây trình bày cách chèn hình ảnh vào tài liệu PDF.

  • Tạo tài liệu PDF mới hoặc mở tài liệu hiện có bằng lớp Document.
  • Nhận trang bạn muốn chèn hình ảnh vào.
  • Thêm hình ảnh vào hình ảnh của trang.
  • Sử dụng các toán tử GSave, ConcatenateMatrixDo để đặt hình ảnh trên trang.
  • Lưu tài liệu PDF bằng phương pháp Document.Save().

Mẫu mã sau đây cho biết cách chèn hình ảnh vào PDF bằng C#.

// Tải tài liệu PDF 
Document document = new Document();
// Thêm trang
Aspose.Pdf.Page page = document.Pages.Add();

// Đặt tọa độ
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 250;
int upperRightY = 250; 

// Tải hình ảnh vào luồng
FileStream imageStream = new FileStream("aspose_pdf.png", FileMode.Open);
// Thêm hình ảnh vào bộ sưu tập Hình ảnh của Tài nguyên Trang
page.Resources.Images.Add(imageStream);
// Sử dụng toán tử GSave: toán tử này lưu trạng thái đồ họa hiện tại
page.Contents.Add(new Aspose.Pdf.Operators.GSave());
// Tạo các đối tượng Hình chữ nhật và Ma trận
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
//Ma trận ma trận = ma trận mới (kép mới [] { hình chữ nhật.URX - hình chữ nhật.LLX, 0, 0, hình chữ nhật.URY - hình chữ nhật.LLY, hình chữ nhật.LLX, hình chữ nhật.LLY });
Matrix matrix = new Matrix(new double[] { 200, 0, 0, 200, 200, 600 });
// Sử dụng toán tử ConcatenateMatrix (ma trận nối): xác định cách đặt hình ảnh
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
XImage ximage = page.Resources.Images[page.Resources.Images.Count];
// Sử dụng toán tử Do: toán tử này vẽ hình ảnh
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));
// Sử dụng toán tử GRestore: toán tử này khôi phục trạng thái đồ họa
page.Contents.Add(new Aspose.Pdf.Operators.GRestore());

// Lưu tài liệu PDF
document.Save("Generated-PDF.pdf");
chèn ảnh vào PDF bằng C#

Tạo bảng trong tệp PDF bằng C#

Bảng được sử dụng để tổ chức dữ liệu ở dạng hàng và cột và để cung cấp tổng quan nhanh về thông tin. Để tạo một bảng trong tài liệu PDF, hãy làm theo các bước dưới đây.

  • Tạo một đối tượng của lớp Document để tạo một tệp PDF mới hoặc tải một tệp hiện có.
  • Truy cập trang bạn muốn tạo bảng.
  • Tạo một thể hiện của lớp Table.
  • Đặt đường viền của bảng và đường viền của ô bằng cách sử dụng lớp BorderInfo.
  • Tạo và thêm một Row mới vào bộ sưu tập Table.Rows.
  • Thêm các ô vào bộ sưu tập Row.Cells.
  • Thêm bảng vào trang bằng phương thức Page.Paragraphs.Add().
  • Lưu tài liệu PDF bằng phương pháp Document.Save().

Mẫu mã sau đây cho biết cách tạo bảng trong PDF bằng C#.

// Tải tài liệu PDF 
Document document = new Document();
// Thêm trang
Aspose.Pdf.Page page = document.Pages.Add();

// Khởi tạo một phiên bản mới của Bảng
Aspose.Pdf.Table table = new Aspose.Pdf.Table();
// Đặt màu đường viền bảng là LightGray
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
// Đặt đường viền cho các ô của bảng
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
// Tạo một vòng lặp để thêm 10 hàng
for (int row_count = 1; row_count < 10; row_count++)
{
	// Thêm hàng vào bảng
	Aspose.Pdf.Row row = table.Rows.Add();
	// Thêm ô bảng
	row.Cells.Add("Column (" + row_count + ", 1)");
	row.Cells.Add("Column (" + row_count + ", 2)");
	row.Cells.Add("Column (" + row_count + ", 3)");
}

// Thêm bảng vào trang
page.Paragraphs.Add(table);

// Lưu tài liệu PDF
document.Save("Generated-PDF.pdf");
tạo bảng trong pdf bằng C#

Thêm chú thích vào PDF bằng C#

Chú thích là các đối tượng đồ họa được sử dụng để cung cấp thông tin bổ sung về nội dung trong tài liệu PDF. Định dạng PDF hỗ trợ nhiều chú thích khác nhau bao gồm văn bản, đánh dấu, dòng, ghi chú, v.v. Sau đây là các bước để thêm chú thích vào tài liệu PDF.

Mẫu mã sau đây cho biết cách thêm chú thích vào PDF bằng C#.

// Tải tài liệu PDF 
Document document = new Document();
// Thêm trang
Aspose.Pdf.Page page = document.Pages.Add();

// Tạo chú thích
TextAnnotation textAnnotation = new TextAnnotation(page, new Aspose.Pdf.Rectangle(200, 400, 400, 600));
textAnnotation.Title = "Sample Annotation Title";
textAnnotation.Subject = "Sample Subject";
textAnnotation.State = AnnotationState.Accepted;
textAnnotation.Contents = "Sample contents for the annotation";
textAnnotation.Open = true;
textAnnotation.Icon = TextIcon.Key;

Border border = new Border(textAnnotation);
border.Width = 5;
border.Dash = new Dash(1, 1);
textAnnotation.Border = border;
textAnnotation.Rect = new Aspose.Pdf.Rectangle(200, 400, 400, 600);

// Thêm chú thích vào bộ sưu tập chú thích của trang
page.Annotations.Add(textAnnotation);

// Lưu tài liệu PDF
document.Save("Generated-PDF.pdf");
thêm chú thích trong PDF bằng C#

Bạn cũng có thể thêm siêu liên kết vào tài liệu PDF bằng Chú thích liên kết. Sau đây là các bước để thực hiện thao tác này.

  • Tạo một đối tượng Document mới.
  • Truy cập trang mà bạn muốn thêm siêu kết nối.
  • Tạo một thể hiện của lớp LinkAnnotation.
  • Đặt các thuộc tính của đối tượng LinkAnnotation bao gồm URI hành động.
  • Thêm liên kết vào bộ sưu tập Page.Annotations.
  • Sử dụng lớp FreeTextAnnotation để đặt văn bản của siêu liên kết.
  • Thêm đối tượng FreeTextAnnotation vào bộ sưu tập Page.Annotations.
  • Tạo tài liệu PDF bằng phương pháp Document.Save().

Mẫu mã sau đây cho biết cách thêm siêu liên kết vào tài liệu PDF bằng C#.

// Tải tài liệu PDF 
Document document = new Document();
// Thêm trang
Aspose.Pdf.Page page = document.Pages.Add();

// Tạo đối tượng chú thích liên kết
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 800, 250, 750));
// Tạo đối tượng viền cho LinkAnnotation
Border border = new Border(link);
// Đặt giá trị độ rộng đường viền là 0
border.Width = 1;
// Đặt đường viền cho LinkAnnotation
link.Border = border; 

// Chỉ định loại liên kết là URI từ xa
link.Action = new GoToURIAction("www.aspose.com");
// Thêm chú thích liên kết vào bộ sưu tập chú thích của trang đầu tiên của tệp PDF
page.Annotations.Add(link);

// Tạo chú thích Văn bản miễn phí cho văn bản của liên kết
FreeTextAnnotation textAnnotation = new FreeTextAnnotation(document.Pages[1], new Aspose.Pdf.Rectangle(100, 800, 250, 750), new DefaultAppearance(Aspose.Pdf.Text.FontRepository.FindFont("TimesNewRoman"), 10, System.Drawing.Color.Blue));
// Chuỗi sẽ được thêm dưới dạng Văn bản miễn phí
textAnnotation.Contents = "Link to Aspose website";
// Đặt đường viền cho Chú thích văn bản miễn phí
textAnnotation.Border = border;
// Thêm chú thích FreeText vào bộ sưu tập chú thích của trang đầu tiên của Tài liệu
page.Annotations.Add(textAnnotation);

// Lưu tài liệu PDF
document.Save("Generated-PDF.pdf");
thêm siêu liên kết trong PDF bằng C#

Tạo Dấu trang trong PDF bằng C#

Dấu trang được sử dụng để điều hướng đến một phần hoặc trang cụ thể trong tài liệu PDF. Aspose.PDF for .NET cho phép bạn thêm hoặc thao tác với dấu trang. Sau đây là các bước để tạo và thêm dấu trang trong tài liệu PDF.

  • Tạo một tài liệu PDF hoặc mở một tài liệu hiện có.
  • Tạo một đối tượng dấu trang mới bằng cách sử dụng lớp OutlineItemCollection.
  • Thêm dấu trang vào bộ sưu tập Document.Outlines.
  • Tạo tài liệu PDF bằng phương pháp Document.Save().

Mẫu mã sau đây cho biết cách tạo tài liệu PDF có dấu trang bằng C#.

// Tải tài liệu PDF 
Document document = new Document();
// Thêm trang
Aspose.Pdf.Page page = document.Pages.Add();

// Tạo một đối tượng dấu trang gốc
OutlineItemCollection pdfOutline = new OutlineItemCollection(document.Outlines);
pdfOutline.Title = "Parent Outline";
pdfOutline.Italic = true;
pdfOutline.Bold = true;

// Tạo một đối tượng đánh dấu con
OutlineItemCollection pdfChildOutline = new OutlineItemCollection(document.Outlines);
pdfChildOutline.Title = "Child Outline";
pdfChildOutline.Italic = true;
pdfChildOutline.Bold = true;

// Thêm dấu trang con vào bộ sưu tập dấu trang mẹ
pdfOutline.Add(pdfChildOutline);
// Thêm dấu trang gốc trong bộ sưu tập phác thảo của tài liệu.
document.Outlines.Add(pdfOutline);

// Lưu tài liệu PDF
document.Save("Generated-PDF.pdf");
tạo dấu trang trong PDF bằng C#

Sự kết luận

Trong bài viết này, tôi đã chỉ cho bạn cách tạo tệp PDF từ đầu bằng C#. Hướng dẫn từng bước và mẫu mã trình bày cách thêm văn bản, hình ảnh, bảng, chú thích, siêu liên kết và dấu trang vào tệp PDF theo cách lập trình. Bạn có thể khám phá các tính năng khác của Thư viện .NET PDF của Aspose bằng cách sử dụng tài liệu.

Xem thêm