PDF เป็นรูปแบบเอกสารที่มีคุณสมบัติหลากหลายซึ่งรองรับองค์ประกอบต่างๆ มากมาย รวมถึงคำอธิบายประกอบ สื่อ แบบฟอร์ม ฯลฯ ไฮเปอร์ลิงก์เป็นองค์ประกอบสำคัญที่ใช้เพื่อนำทางภายใน PDF จาก PDF หนึ่งไปยังอีก PDF หนึ่ง ไปจนถึง หน้าเว็บ ฯลฯ ในขณะที่สร้างเอกสาร PDF โดยทางโปรแกรม คุณอาจจำเป็นต้องแทรกไฮเปอร์ลิงก์อยู่บ่อยครั้ง ดังนั้น ในบทความนี้ คุณจะได้เรียนรู้วิธีเพิ่มและอัปเดตไฮเปอร์ลิงก์ในไฟล์ PDF ใน C# .NET
- .NET API เพื่อเพิ่มการเชื่อมโยงหลายมิติใน PDF
- เพิ่มการเชื่อมโยงหลายมิติใน PDF
- เพิ่มไฮเปอร์ลิงก์ไปยัง PDF ภายนอก
- แทรกการเชื่อมโยงหลายมิติไปยังหน้าใดหน้าหนึ่ง
- อัปเดตการเชื่อมโยงหลายมิติในรูปแบบ PDF
C# .NET API เพื่อเพิ่มหรืออัปเดตไฮเปอร์ลิงก์ในรูปแบบ PDF
ในการจัดการไฮเปอร์ลิงก์ในไฟล์ PDF เราจะใช้ Aspose.PDF for .NET เป็น API ยอดนิยมที่ช่วยให้คุณสามารถสร้าง ประมวลผล และแปลงไฟล์ PDF จากภายในแอปพลิเคชัน .NET คุณสามารถ ดาวน์โหลด ไบนารีของ API หรือติดตั้งโดยใช้ NuGet
PM> Install-Package Aspose.PDF
เพิ่มไฮเปอร์ลิงก์ใน PDF ใน C#
ต่อไปนี้เป็นขั้นตอนในการเพิ่มไฮเปอร์ลิงก์ไปยังไฟล์ PDF ใน C#
- สร้าง PDF ใหม่หรือโหลดไฟล์ที่มีอยู่โดยใช้คลาส Document
- รับข้อมูลอ้างอิงของหน้าที่คุณต้องการเพิ่มไฮเปอร์ลิงก์จากคอลเล็กชัน Document.Pages
- สร้างวัตถุของคลาส LinkAnnotation และตั้งค่าคุณสมบัติ
- เริ่มต้นคุณสมบัติ LinkAnnotation.Action เป็นวัตถุ GoToURIaction ที่มี URL
- เพิ่มลิงก์ไปยังคอลเลกชัน Page.Annotations
- บันทึก PDF โดยใช้วิธี Document.Save(String)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มไฮเปอร์ลิงก์ใน PDF ใน C#
// เปิดเอกสาร
Document document = new Document("input.pdf");
// รับการอ้างอิงของหน้า
var page = document.Pages[1];
// สร้างวัตถุคำอธิบายประกอบลิงก์
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 100, 300, 300));
// สร้างวัตถุเส้นขอบสำหรับ LinkAnnotation
Border border = new Border(link);
// ตั้งค่าความกว้างของเส้นขอบเป็น 0
border.Width = 0;
// กำหนดเส้นขอบสำหรับ LinkAnnotation
link.Border = border;
// ระบุประเภทลิงก์เป็น URI ระยะไกล
link.Action = new GoToURIAction("www.aspose.com");
// เพิ่มคำอธิบายประกอบลิงก์ไปยังคอลเลกชันคำอธิบายประกอบของหน้าแรกของไฟล์ PDF
page.Annotations.Add(link);
// บันทึกเอกสารที่อัปเดต
document.Save("output.pdf");
เพิ่มไฮเปอร์ลิงก์ไปยัง PDF ภายนอกใน C#
คุณยังสามารถนำทางไปยังไฟล์ PDF ภายนอกจาก PDF หนึ่งโดยใช้ไฮเปอร์ลิงก์ ขั้นตอนต่อไปนี้สาธิตวิธีเพิ่มไฮเปอร์ลิงก์ไปยังไฟล์ PDF ภายนอกใน C#
- สร้าง PDF ใหม่หรือโหลดไฟล์ที่มีอยู่โดยใช้คลาส Document
- รับข้อมูลอ้างอิงของหน้าที่คุณต้องการเพิ่มไฮเปอร์ลิงก์จากคอลเล็กชัน Document.Pages
- สร้างวัตถุของคลาส LinkAnnotation และตั้งค่าคุณสมบัติ
- เริ่มต้นคุณสมบัติ LinkAnnotation.Action เป็นวัตถุ GoToRemoteAction ที่มีเส้นทางไปยัง PDF ภายนอก
- เพิ่มลิงก์ไปยังคอลเลกชัน Page.Annotations
- บันทึกเอกสารโดยใช้เมธอด Document.Save(String)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มไฮเปอร์ลิงก์ไปยัง PDF ภายนอกใน C#
// เปิดเอกสาร
Document document = new Document("input.pdf");
// รับการอ้างอิงของหน้า
var page = document.Pages[1];
// สร้างไฮเปอร์ลิงก์
LinkAnnotation link = new LinkAnnotation(page, new Aspose.Pdf.Rectangle(100, 100, 300, 300));
link.Color = Aspose.Pdf.Color.FromRgb(System.Drawing.Color.Green);
// กำหนดการกระทำ
link.Action = new GoToRemoteAction("external.pdf", 1);
// เพิ่มการเชื่อมโยงหลายมิติไปยังหน้า
page.Annotations.Add(link);
// บันทึกเอกสารที่อัปเดต
document.Save("output.pdf");
แทรกไฮเปอร์ลิงก์ไปยังหน้า PDF เฉพาะ
ในบางกรณี คุณต้องเลื่อนจากหน้าหนึ่งไปอีกหน้าหนึ่งภายในเอกสาร PDF คลาส LocalHyperlink ใช้เพื่อนำทางไปยังหน้าเฉพาะใน PDF ต่อไปนี้เป็นขั้นตอนในการบรรลุเป้าหมายนี้
- สร้าง PDF ใหม่หรือโหลดไฟล์ที่มีอยู่โดยใช้คลาส Document
- รับข้อมูลอ้างอิงของหน้าที่คุณต้องการเพิ่มไฮเปอร์ลิงก์จากคอลเล็กชัน Document.Pages
- สร้างอินสแตนซ์ของ TextFragment เพื่อตั้งค่าข้อความของไฮเปอร์ลิงก์
- สร้างอินสแตนซ์ของคลาส LocalHyperlink และตั้งค่าคุณสมบัติ LocalHyperlink.TargetPageNumber เป็นหมายเลขหน้าที่ต้องการ
- กำหนดวัตถุ LocalHyperlink ให้กับคุณสมบัติ TextFragment.Hyperlink
- เพิ่มข้อความในหน้าโดยใช้เมธอด Page.Paragraphs.Add(TextFragment)
- บันทึก PDF โดยใช้วิธี Document.Save(String)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มไฮเปอร์ลิงก์เพื่อไปยังหน้าเฉพาะใน PDF
// เปิดเอกสาร
Document document = new Document("input.pdf");
// รับการอ้างอิงของหน้า
var page = document.Pages[1];
// สร้างตัวอย่าง TextFragment
Aspose.Pdf.Text.TextFragment text = new Aspose.Pdf.Text.TextFragment("link page number test to page 7");
// สร้างอินสแตนซ์การเชื่อมโยงหลายมิติในเครื่อง
Aspose.Pdf.LocalHyperlink link = new Aspose.Pdf.LocalHyperlink();
// ตั้งค่าหน้าเป้าหมายสำหรับอินสแตนซ์ของลิงก์
link.TargetPageNumber = 7;
// ตั้งค่าการเชื่อมโยงหลายมิติ TextFragment
text.Hyperlink = link;
// เพิ่มข้อความในคอลเลกชันย่อหน้าของหน้า
page.Paragraphs.Add(text);
// บันทึกเอกสารที่อัปเดต
document.Save("output.pdf");
อัปเดตการเชื่อมโยงหลายมิติใน PDF โดยใช้ C
คุณยังสามารถเรียกไฮเปอร์ลิงก์ในไฟล์ PDF และอัปเดตคุณสมบัติได้ ต่อไปนี้เป็นขั้นตอนในการดำเนินการนี้
- โหลดไฟล์ PDF โดยใช้คลาส Document
- รับข้อมูลอ้างอิงของหน้าที่เป็นที่ตั้งของไฮเปอร์ลิงก์จากคอลเล็กชัน Document.Pages
- แยกวัตถุ LinkAnnotation ที่ต้องการจากคอลเลกชัน Page.Annotations ตามดัชนี
- อัปเดตคุณสมบัติที่จำเป็นและบันทึก PDF โดยใช้วิธี Document.Save(String)
ตัวอย่างโค้ดต่อไปนี้แสดงวิธีอัปเดตไฮเปอร์ลิงก์ใน PDF โดยใช้ C#
// เปิดเอกสาร
Document document = new Document("input.pdf");];
// รับคำอธิบายประกอบลิงก์แรกจากหน้าแรกของเอกสาร
LinkAnnotation linkAnnot = (LinkAnnotation)document.Pages[1].Annotations[1];
// เปลี่ยนการดำเนินการเชื่อมโยงและกำหนดเป้าหมายเป็นที่อยู่เว็บ
linkAnnot.Action = new GoToURIAction("www.aspose.com");
// เปลี่ยนคุณสมบัติอื่นๆ ตามต้องการ
// บันทึกเอกสารที่อัปเดต
document.Save("output.pdf");
รับใบอนุญาตฟรี
คุณสามารถ รับใบอนุญาตชั่วคราวได้ฟรี เพื่อใช้ Aspose.PDF for .NET โดยไม่มีข้อจำกัดในการประเมิน
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีเพิ่มไฮเปอร์ลิงก์ประเภทต่างๆ ในไฟล์ PDF โดยใช้ C# นอกจากนี้ คุณได้เห็นวิธีดึงไฮเปอร์ลิงก์จากไฟล์ PDF ที่มีอยู่และอัปเดตคุณสมบัติโดยทางโปรแกรม นอกจากนี้ คุณสามารถสำรวจเพิ่มเติมเกี่ยวกับ .NET PDF API โดยใช้ เอกสารประกอบ ในกรณีที่คุณมีคำถามหรือข้อสงสัย คุณสามารถติดต่อเราผ่านทาง ฟอรัม