สร้างเอกสาร PDF โดยใช้ C#

PDF เป็นรูปแบบเอกสารที่ไม่ขึ้นกับแพลตฟอร์ม ซึ่งช่วยให้การจัดรูปแบบและเค้าโครงของเนื้อหาสอดคล้องกันในระบบปฏิบัติการหรือเครื่องต่างๆ นี่คือเหตุผลที่องค์กรต่างๆ ใช้รูปแบบ PDF สำหรับสร้างใบแจ้งหนี้ ใบเสร็จรับเงิน รายงาน และเอกสารทางธุรกิจอื่นๆ แบบไดนามิก Aspose.PDF for .NET เป็นไลบรารี PDF ที่ช่วยให้คุณใช้งาน PDF อัตโนมัติในแอปพลิเคชัน .NET ช่วยให้คุณสร้าง แก้ไข แยกวิเคราะห์ และแปลงไฟล์ PDF โดยทางโปรแกรมโดยใช้ C# หรือ VB.NET ในบทความนี้ ฉันจะกล่าวถึงคุณลักษณะการสร้าง PDF และแสดงวิธีสร้างไฟล์ PDF ตั้งแต่เริ่มต้นโดยใช้ C#

ฉันจะเริ่มต้นด้วยการสร้างเอกสาร PDF อย่างง่าย จากนั้นดำเนินการเพิ่มองค์ประกอบอื่นๆ ลงในเอกสาร ต่อไปนี้เป็นรายการคุณสมบัติที่ฉันจะแสดงในบทความนี้

ห้องสมุด C # PDF - การติดตั้ง

คุณสามารถติดตั้ง Aspose.PDF for .NET โดยใช้ NuGet Package Manager หรือ Package Manager Console โดยใช้คำสั่งต่อไปนี้ หรือดาวน์โหลดได้จากส่วน ดาวน์โหลด

Install-Package Aspose.Pdf

สร้างไฟล์ PDF โดยใช้ C#

ก่อนอื่นให้สร้างเอกสาร PDF ที่มีส่วนของข้อความ ต่อไปนี้เป็นขั้นตอนในการสร้างเอกสาร PDF อย่างง่ายตั้งแต่เริ่มต้น

  • สร้างอินสแตนซ์ของคลาส Document
  • เพิ่ม หน้า ใหม่ในคอลเลกชัน หน้า ของเอกสาร
  • เพิ่ม TextFragment ใหม่ไปยังย่อหน้าของ PDF
  • สร้างไฟล์ PDF โดยใช้วิธี Document.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างไฟล์ PDF โดยใช้ C#

// โหลดเอกสาร PDF 
Document document = new Document();

// เพิ่มหน้า
Aspose.Pdf.Page page = document.Pages.Add();

// เพิ่มข้อความในหน้าใหม่
page.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment("Hello World! This is a new PDF generated by Aspose.PDF for .NET."));

// บันทึกเอกสาร PDF
document.Save("Generated-PDF.pdf");
สร้าง pdf โดยใช้ C#

ใช้การจัดรูปแบบข้อความใน PDF โดยใช้ C#

มาดูวิธีเพิ่มข้อความในเอกสาร PDF และใช้ตัวเลือกการจัดรูปแบบต่างๆ กัน ต่อไปนี้เป็นขั้นตอนในการดำเนินการนี้

  • ใช้คลาส Document เพื่อสร้างเอกสาร PDF ใหม่หรือโหลดเอกสารที่มีอยู่
  • เข้าสู่ หน้า ที่คุณต้องการวางข้อความ
  • สร้างวัตถุของ TextFragment และตั้งค่าข้อความและตัวเลือกการจัดรูปแบบอื่นๆ เช่น ตำแหน่ง แบบอักษร สี ขนาด ฯลฯ
  • ใช้คลาส TextBuilder เพื่อเพิ่มวัตถุ TextFragment ลงในเพจ
  • ใช้เมธอด Document.Save() เพื่อสร้างเอกสาร PDF

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มข้อความที่จัดรูปแบบในไฟล์ PDF โดยใช้ C#

// โหลดเอกสาร PDF 
Document document = new Document();
// เพิ่มหน้า
Aspose.Pdf.Page page = document.Pages.Add();

// สร้างส่วนข้อความ
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);

// ตั้งค่าคุณสมบัติข้อความ
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;
// สร้างสีใหม่ด้วย pattern colorspace
textFragment1.TextState.ForegroundColor = new Aspose.Pdf.Color()
{
	PatternColorSpace = new Aspose.Pdf.Drawing.GradientAxialShading(Color.Red, Color.Blue)
};
// สร้างวัตถุ TextBuilder
TextBuilder textBuilder = new TextBuilder(page);

// ผนวกส่วนข้อความต่อท้ายหน้า PDF
textBuilder.AppendText(textFragment);
textBuilder.AppendText(textFragment1);

// บันทึกเอกสาร PDF
document.Save("Generated-PDF.pdf");
สร้าง pdf ด้วยข้อความที่จัดรูปแบบโดยใช้ C#

สร้าง PDF แบบหลายคอลัมน์โดยใช้ C#

เรามักเห็นว่าข้อความในหนังสือพิมพ์ บทความวิจัย และเอกสารประเภทอื่นๆ แบ่งเป็น 2 คอลัมน์ขึ้นไป เพื่อให้บรรลุการแบ่งข้อความนี้ Aspose.PDF for .NET อนุญาตให้สร้าง PDF แบบหลายคอลัมน์ ต่อไปนี้เป็นขั้นตอนในการสร้าง PDF แบบหลายคอลัมน์

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้าง PDF แบบหลายคอลัมน์โดยใช้ C#

// โหลดเอกสาร PDF 
Document document = new Document();
// ระบุข้อมูลระยะขอบด้านซ้ายสำหรับไฟล์ PDF
document.PageInfo.Margin.Left = 40;
// ระบุข้อมูลระยะขอบขวาสำหรับไฟล์ PDF
document.PageInfo.Margin.Right = 40;
Aspose.Pdf.Page page = document.Pages.Add();

// เพิ่มบรรทัด
Aspose.Pdf.Drawing.Graph graph1 = new Aspose.Pdf.Drawing.Graph(500, 2);
// เพิ่มบรรทัดในการถอดความคอลเลกชันของวัตถุส่วน
page.Paragraphs.Add(graph1);

// ระบุพิกัดสำหรับบรรทัด
float[] posArr = new float[] { 1, 2, 500, 2 };
Aspose.Pdf.Drawing.Line l1 = new Aspose.Pdf.Drawing.Line(posArr);
graph1.Shapes.Add(l1);

// เพิ่มหัวเรื่อง
// สร้างตัวแปรสตริงด้วยข้อความที่มีแท็ก html
string s = "<font face=\"Times New Roman\" size=4>" +
"<strong> How to Steer Clear of money scams</<strong> "
+ "</font>";

// สร้างย่อหน้าข้อความที่มีข้อความ HTML
HtmlFragment heading_text = new HtmlFragment(s);
page.Paragraphs.Add(heading_text);

Aspose.Pdf.FloatingBox box = new Aspose.Pdf.FloatingBox();
// เพิ่มสี่คอลัมน์ในส่วน
box.ColumnInfo.ColumnCount = 2;
// กำหนดระยะห่างระหว่างคอลัมน์
box.ColumnInfo.ColumnSpacing = "5";
// กำหนดความกว้างของคอลัมน์
box.ColumnInfo.ColumnWidths = "250 250"; 

// สร้างข้อความ 
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.");

// เพิ่มข้อความลงในเอกสาร
box.Paragraphs.Add(text2);
page.Paragraphs.Add(box);

// บันทึกเอกสาร PDF
document.Save("Generated-PDF.pdf");
สร้าง pdf แบบหลายคอลัมน์โดยใช้ C#

แทรกรูปภาพใน PDF โดยใช้ C#

ขั้นตอนต่อไปนี้จะสาธิตวิธีการแทรกรูปภาพในเอกสาร PDF

  • สร้างเอกสาร PDF ใหม่หรือเปิดเอกสารที่มีอยู่โดยใช้คลาส Document
  • รับหน้าที่คุณต้องการแทรกรูปภาพ
  • เพิ่มรูปภาพลงในรูปภาพของเพจ
  • ใช้ตัวดำเนินการ GSave, ConcatenateMatrix และ Do เพื่อวางภาพบนหน้า
  • บันทึกเอกสาร PDF โดยใช้วิธี Document.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกรูปภาพใน PDF โดยใช้ C#

// โหลดเอกสาร PDF 
Document document = new Document();
// เพิ่มหน้า
Aspose.Pdf.Page page = document.Pages.Add();

// ตั้งค่าพิกัด
int lowerLeftX = 100;
int lowerLeftY = 100;
int upperRightX = 250;
int upperRightY = 250; 

// โหลดรูปภาพลงในสตรีม
FileStream imageStream = new FileStream("aspose_pdf.png", FileMode.Open);
// เพิ่มรูปภาพไปยังคอลเลกชันรูปภาพของทรัพยากรของเพจ
page.Resources.Images.Add(imageStream);
// การใช้ตัวดำเนินการ GSave: ตัวดำเนินการนี้จะบันทึกสถานะกราฟิกปัจจุบัน
page.Contents.Add(new Aspose.Pdf.Operators.GSave());
// สร้างวัตถุสี่เหลี่ยมผืนผ้าและเมทริกซ์
Aspose.Pdf.Rectangle rectangle = new Aspose.Pdf.Rectangle(lowerLeftX, lowerLeftY, upperRightX, upperRightY);
//เมทริกซ์เมทริกซ์ = เมทริกซ์ใหม่ (คู่ใหม่ [] { สี่เหลี่ยม.URX - สี่เหลี่ยมผืนผ้า.LLX, 0, 0, สี่เหลี่ยมผืนผ้า.URY - สี่เหลี่ยมผืนผ้า.LLY, สี่เหลี่ยมผืนผ้า.LLX, สี่เหลี่ยมผืนผ้า.LLY });
Matrix matrix = new Matrix(new double[] { 200, 0, 0, 200, 200, 600 });
// การใช้ตัวดำเนินการ ConcatenateMatrix (concatenate matrix): กำหนดวิธีการวางรูปภาพ
page.Contents.Add(new Aspose.Pdf.Operators.ConcatenateMatrix(matrix));
XImage ximage = page.Resources.Images[page.Resources.Images.Count];
// การใช้ตัวดำเนินการ Do: ตัวดำเนินการนี้วาดภาพ
page.Contents.Add(new Aspose.Pdf.Operators.Do(ximage.Name));
// การใช้ตัวดำเนินการ GRestore: ตัวดำเนินการนี้จะกู้คืนสถานะกราฟิก
page.Contents.Add(new Aspose.Pdf.Operators.GRestore());

// บันทึกเอกสาร PDF
document.Save("Generated-PDF.pdf");
แทรกรูปภาพใน PDF โดยใช้ C#

สร้างตารางในไฟล์ PDF โดยใช้ C#

ตารางใช้เพื่อจัดระเบียบข้อมูลในรูปแบบของแถวและคอลัมน์ และเพื่อให้ภาพรวมอย่างรวดเร็วของข้อมูล หากต้องการสร้างตารางในเอกสาร PDF ให้ทำตามขั้นตอนด้านล่าง

  • สร้างวัตถุของคลาส Document เพื่อสร้าง PDF ใหม่หรือโหลดไฟล์ที่มีอยู่
  • เข้าถึงหน้าที่คุณต้องการสร้างตาราง
  • สร้างอินสแตนซ์ของคลาส Table
  • ตั้งค่าเส้นขอบของตารางและเส้นขอบของเซลล์โดยใช้คลาส BorderInfo
  • สร้างและเพิ่ม Row ใหม่ไปยังคอลเลกชัน Table.Rows
  • เพิ่มเซลล์ไปยังคอลเลกชัน Row.Cells
  • เพิ่มตารางไปยังหน้าโดยใช้เมธอด Page.Paragraphs.Add()
  • บันทึกเอกสาร PDF โดยใช้วิธี Document.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างตารางใน PDF โดยใช้ C#

// โหลดเอกสาร PDF 
Document document = new Document();
// เพิ่มหน้า
Aspose.Pdf.Page page = document.Pages.Add();

// เริ่มต้นอินสแตนซ์ใหม่ของตาราง
Aspose.Pdf.Table table = new Aspose.Pdf.Table();
// กำหนดสีขอบตารางเป็น LightGray
table.Border = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
// กำหนดเส้นขอบให้กับเซลล์ตาราง
table.DefaultCellBorder = new Aspose.Pdf.BorderInfo(Aspose.Pdf.BorderSide.All, .5f, Aspose.Pdf.Color.FromRgb(System.Drawing.Color.LightGray));
// สร้างลูปเพื่อเพิ่ม 10 แถว
for (int row_count = 1; row_count < 10; row_count++)
{
	// เพิ่มแถวในตาราง
	Aspose.Pdf.Row row = table.Rows.Add();
	// เพิ่มเซลล์ตาราง
	row.Cells.Add("Column (" + row_count + ", 1)");
	row.Cells.Add("Column (" + row_count + ", 2)");
	row.Cells.Add("Column (" + row_count + ", 3)");
}

// เพิ่มตารางลงในเพจ
page.Paragraphs.Add(table);

// บันทึกเอกสาร PDF
document.Save("Generated-PDF.pdf");
สร้างตารางใน pdf โดยใช้ C#

เพิ่มคำอธิบายประกอบใน PDF โดยใช้ C#

คำอธิบายประกอบเป็นวัตถุกราฟิกที่ใช้เพื่อให้ข้อมูลเพิ่มเติมเกี่ยวกับเนื้อหาในเอกสาร PDF รูปแบบ PDF รองรับคำอธิบายประกอบต่างๆ รวมถึงข้อความ ไฮไลท์ บรรทัด บันทึก และอื่นๆ ต่อไปนี้เป็นขั้นตอนในการเพิ่มคำอธิบายประกอบในเอกสาร PDF

  • สร้างเอกสาร PDF ใหม่หรือโหลดเอกสารที่มีอยู่
  • เลือกหน้าที่คุณต้องการเพิ่มคำอธิบายประกอบ
  • สร้างคำอธิบายประกอบใหม่ เช่น TextAnnotation, LineAnnotation, HighlightAnnotation เป็นต้น
  • ตั้งค่าคุณสมบัติของคำอธิบายประกอบ
  • เพิ่มคำอธิบายประกอบในคอลเลกชัน Page.Annotations
  • สร้าง PDF โดยใช้วิธี Document.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มคำอธิบายประกอบใน PDF โดยใช้ C#

// โหลดเอกสาร PDF 
Document document = new Document();
// เพิ่มหน้า
Aspose.Pdf.Page page = document.Pages.Add();

// สร้างคำอธิบายประกอบ
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);

// เพิ่มคำอธิบายประกอบในคอลเลกชันคำอธิบายประกอบของเพจ
page.Annotations.Add(textAnnotation);

// บันทึกเอกสาร PDF
document.Save("Generated-PDF.pdf");
เพิ่มคำอธิบายประกอบใน PDF โดยใช้ C#

คุณยังสามารถเพิ่มไฮเปอร์ลิงก์ไปยังเอกสาร PDF โดยใช้คำอธิบายประกอบของลิงก์ ต่อไปนี้เป็นขั้นตอนในการดำเนินการนี้

  • สร้างวัตถุ เอกสาร ใหม่
  • เข้าถึงหน้าที่คุณต้องการเพิ่มไฮเปอร์ลิงก์
  • สร้างอินสแตนซ์ของคลาส LinkAnnotation
  • ตั้งค่าคุณสมบัติของวัตถุ LinkAnnotation รวมถึง URI การดำเนินการ
  • เพิ่มลิงก์ไปยังคอลเลกชัน Page.Annotations
  • ใช้คลาส FreeTextAnnotation เพื่อตั้งค่าข้อความของไฮเปอร์ลิงก์
  • เพิ่มวัตถุ FreeTextAnnotation ไปยังคอลเลกชัน Page.Annotations
  • สร้างเอกสาร PDF โดยใช้วิธี Document.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มไฮเปอร์ลิงก์ไปยังเอกสาร PDF โดยใช้ C#

// โหลดเอกสาร PDF 
Document document = new Document();
// เพิ่มหน้า
Aspose.Pdf.Page page = document.Pages.Add();

// สร้างวัตถุคำอธิบายประกอบลิงก์
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 800, 250, 750));
// สร้างวัตถุเส้นขอบสำหรับ LinkAnnotation
Border border = new Border(link);
// ตั้งค่าความกว้างของเส้นขอบเป็น 0
border.Width = 1;
// กำหนดเส้นขอบสำหรับ LinkAnnotation
link.Border = border; 

// ระบุประเภทลิงก์เป็น URI ระยะไกล
link.Action = new GoToURIAction("www.aspose.com");
// เพิ่มคำอธิบายประกอบลิงก์ไปยังคอลเลกชันคำอธิบายประกอบของหน้าแรกของไฟล์ PDF
page.Annotations.Add(link);

// สร้างคำอธิบายประกอบข้อความอิสระสำหรับข้อความของลิงก์
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));
// สตริงที่จะเพิ่มเป็นข้อความอิสระ
textAnnotation.Contents = "Link to Aspose website";
// กำหนดเส้นขอบสำหรับคำอธิบายประกอบข้อความอิสระ
textAnnotation.Border = border;
// เพิ่มคำอธิบายประกอบ FreeText ไปยังชุดคำอธิบายประกอบของหน้าแรกของเอกสาร
page.Annotations.Add(textAnnotation);

// บันทึกเอกสาร PDF
document.Save("Generated-PDF.pdf");
เพิ่มไฮเปอร์ลิงก์ใน PDF โดยใช้ C#

สร้างบุ๊กมาร์กใน PDF โดยใช้ C#

บุ๊กมาร์กใช้เพื่อนำทางไปยังส่วนหรือหน้าเฉพาะในเอกสาร PDF Aspose.PDF for .NET อนุญาตให้คุณเพิ่มหรือจัดการบุ๊กมาร์ก ต่อไปนี้เป็นขั้นตอนในการสร้างและเพิ่มบุ๊กมาร์กในเอกสาร PDF

  • สร้างเอกสาร PDF หรือเปิดเอกสารที่มีอยู่
  • สร้างวัตถุบุ๊กมาร์กใหม่โดยใช้คลาส OutlineItemCollection
  • เพิ่มบุ๊กมาร์กในคอลเลกชัน Document.Outlines
  • สร้างเอกสาร PDF โดยใช้วิธี Document.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างเอกสาร PDF พร้อมบุ๊กมาร์กโดยใช้ C#

// โหลดเอกสาร PDF 
Document document = new Document();
// เพิ่มหน้า
Aspose.Pdf.Page page = document.Pages.Add();

// สร้างวัตถุบุ๊กมาร์กหลัก
OutlineItemCollection pdfOutline = new OutlineItemCollection(document.Outlines);
pdfOutline.Title = "Parent Outline";
pdfOutline.Italic = true;
pdfOutline.Bold = true;

// สร้างวัตถุบุ๊กมาร์กลูก
OutlineItemCollection pdfChildOutline = new OutlineItemCollection(document.Outlines);
pdfChildOutline.Title = "Child Outline";
pdfChildOutline.Italic = true;
pdfChildOutline.Bold = true;

// เพิ่มบุ๊กมาร์กลูกในคอลเลกชันของบุ๊กมาร์กหลัก
pdfOutline.Add(pdfChildOutline);
// เพิ่มบุ๊กมาร์กหลักในคอลเล็กชันโครงร่างของเอกสาร
document.Outlines.Add(pdfOutline);

// บันทึกเอกสาร PDF
document.Save("Generated-PDF.pdf");
สร้างบุ๊กมาร์กใน PDF โดยใช้ C#

บทสรุป

ในบทความนี้ ฉันได้แสดงวิธีสร้างไฟล์ PDF ตั้งแต่เริ่มต้นโดยใช้ C# คำแนะนำทีละขั้นตอนและตัวอย่างโค้ดจะสาธิตวิธีเพิ่มข้อความ รูปภาพ ตาราง คำอธิบายประกอบ ไฮเปอร์ลิงก์ และบุ๊กมาร์กในไฟล์ PDF โดยทางโปรแกรม คุณสามารถสำรวจฟีเจอร์อื่นๆ ของไลบรารี .NET PDF ของ Aspose ได้โดยใช้ เอกสารประกอบ

ดูสิ่งนี้ด้วย