เพิ่มสารบัญลงในไฟล์ PDF

การแนะนำ

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

ข้อกำหนดเบื้องต้น

ก่อนที่จะเริ่มเขียนโค้ด เรามาตรวจสอบกันก่อนว่าคุณได้เตรียมทุกสิ่งที่คุณต้องการแล้ว:

  1. Aspose.PDF สำหรับ .NET: ตรวจสอบให้แน่ใจว่าคุณได้ดาวน์โหลดและติดตั้งไลบรารี Aspose.PDF แล้ว คุณสามารถดาวน์โหลดได้จากที่นี่.

  2. สภาพแวดล้อมการพัฒนา: ตรวจสอบให้แน่ใจว่าคุณมีสภาพแวดล้อมการพัฒนา .NET เช่น Visual Studio ตั้งค่าไว้บนเครื่องของคุณ

  3. ใบอนุญาต: หากคุณไม่มีใบอนุญาต คุณสามารถทดลองใช้งานฟรีหรือขอใบอนุญาตชั่วคราวได้ที่นี่.

แพ็คเกจนำเข้า

ในการเริ่มต้น โปรดแน่ใจว่าได้นำเข้าเนมสเปซที่จำเป็นที่จุดเริ่มต้นของไฟล์โค้ดของคุณ โดยทำดังนี้:

using System.IO;
using System;
using Aspose.Pdf;
using Aspose.Pdf.Text;

เนมสเปซเหล่านี้ช่วยให้คุณเข้าถึงฟังก์ชันการทำงานเฉพาะของ PDF และจัดการองค์ประกอบข้อความภายในเอกสารของคุณได้

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

ขั้นตอนที่ 1: โหลดเอกสาร PDF

สิ่งแรกที่เราต้องทำคือโหลดไฟล์ PDF ที่มีอยู่ที่เราต้องการเพิ่ม TOC

string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document(dataDir + "AddTOC.pdf");

ในขั้นตอนนี้ เราจะระบุเส้นทางไปยังไดเรกทอรีเอกสารและโหลด PDF โดยใช้Document วัตถุ. ให้แน่ใจว่าได้เปลี่ยน"YOUR DOCUMENT DIRECTORY" ด้วยเส้นทางจริงไปยังไฟล์ของคุณ

ขั้นตอนที่ 2: แทรกหน้าใหม่สำหรับ TOC

ต่อไปเราจะแทรกหน้าใหม่ที่จุดเริ่มต้นของเอกสาร PDF หน้านี้จะทำหน้าที่เป็นสารบัญ

Page tocPage = doc.Pages.Insert(1);

การแทรกหน้า TOC ไว้ที่จุดเริ่มต้น ช่วยให้มั่นใจได้ว่าหน้าดังกล่าวจะปรากฏเป็นสิ่งแรกที่ผู้อ่านเห็นใน PDF

ขั้นตอนที่ 3: สร้างวัตถุข้อมูล TOC

ตอนนี้เรามาสร้างอ็อบเจ็กต์ที่จะแสดงข้อมูล TOC กัน และเราจะเพิ่มชื่อเรื่องให้กับ TOC เพื่อให้มันโดดเด่นขึ้นด้วย

TocInfo tocInfo = new TocInfo();
TextFragment title = new TextFragment("Table Of Contents");
title.TextState.FontSize = 20;
title.TextState.FontStyle = FontStyles.Bold;
tocInfo.Title = title;
tocPage.TocInfo = tocInfo;

ที่นี่ เราตั้งชื่อเรื่องของ TOC เป็น “สารบัญ” เพิ่มขนาดตัวอักษร และทำเป็นตัวหนาเพื่อเน้นข้อความ

ขั้นตอนที่ 4: กำหนดองค์ประกอบ TOC

ในขั้นตอนนี้ เราจะกำหนดองค์ประกอบ (หรือหัวข้อ) ที่จะแสดงใน TOC องค์ประกอบเหล่านี้จะช่วยให้ผู้อ่านสามารถนำทางไปยังส่วนต่างๆ ที่ต้องการในเอกสารได้

string[] titles = new string[4];
titles[0] = "First page";
titles[1] = "Second page";
titles[2] = "Third page";
titles[3] = "Fourth page";

เราได้สร้างอาร์เรย์ของสตริงที่จะใช้เป็นรายการ TOC ซึ่งสอดคล้องกับหน้าต่างๆ ใน PDF

ขั้นตอนที่ 5: สร้างหัวข้อ TOC

ขณะนี้มาถึงส่วนสำคัญแล้ว นั่นคือการเพิ่มหัวข้อลงใน TOC และเชื่อมโยงหัวข้อเหล่านั้นไปยังหน้าที่เกี่ยวข้อง

for (int i = 0; i < 2; i++)
{
    Aspose.Pdf.Heading heading2 = new Aspose.Pdf.Heading(1);
    TextSegment segment2 = new TextSegment();
    heading2.TocPage = tocPage;
    heading2.Segments.Add(segment2);

    heading2.DestinationPage = doc.Pages[i + 2];
    heading2.Top = doc.Pages[i + 2].Rect.Height;
    segment2.Text = titles[i];

    tocPage.Paragraphs.Add(heading2);
}

นี่คือสิ่งที่เกิดขึ้น:

  • หัวข้อ: เราสร้างHeading วัตถุและเพิ่มTextSegment กับมัน
  • หน้าปลายทาง: เราจะกำหนดหน้าที่แต่ละหัวเรื่องจะลิงก์ไปถึง
  • ตำแหน่งบนสุด : เราจะระบุตำแหน่งบนหน้าที่หัวข้อจะชี้ไป
  • ข้อความ: หัวข้อแต่ละหัวข้อจะได้รับชื่อเรื่องจากอาร์เรย์ที่เราสร้างไว้ก่อนหน้านี้

ลูปนี้จะสร้างหัวเรื่องสำหรับสององค์ประกอบแรกใน TOC และเชื่อมโยงไปยังหน้าที่สอดคล้องกัน

ขั้นตอนที่ 6: บันทึก PDF ด้วย TOC

ในที่สุด หลังจากที่เราเพิ่มองค์ประกอบ TOC ทั้งหมดแล้ว ก็ถึงเวลาบันทึก PDF ที่อัปเดตแล้ว

dataDir = dataDir + "TOC_out.pdf";
doc.Save(dataDir);

ตอนนี้ไฟล์ได้รับการบันทึกแล้วโดยเพิ่ม TOC ลงใน PDF ขอแสดงความยินดี—คุณได้เพิ่มสารบัญสำเร็จแล้ว!

ขั้นตอนที่ 7: ข้อความยืนยัน

เพื่อให้ผู้ใช้ทราบว่ากระบวนการเสร็จสิ้นแล้ว เราจะแสดงข้อความง่าย ๆ ในคอนโซล

Console.WriteLine("\nTOC added successfully to an existing PDF.\nFile saved at " + dataDir);

บทสรุป

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

คำถามที่พบบ่อย

ฉันสามารถปรับแต่งรูปลักษณ์ของ TOC ใน Aspose.PDF ได้หรือไม่

ใช่ คุณสามารถปรับแต่งลักษณะของ TOC ได้อย่างเต็มที่ รวมถึงรูปแบบแบบอักษร ขนาด และการจัดตำแหน่ง

ฉันจะเพิ่มหัวข้อย่อยลงใน TOC ได้อย่างไร?

คุณสามารถเพิ่มหัวข้อย่อยได้โดยการปรับHeading ระดับ (เช่นHeading(2)) เพื่อสร้าง TOC แบบลำดับชั้น

สามารถอัพเดต TOC โดยอัตโนมัติหากเอกสารมีการเปลี่ยนแปลงได้หรือไม่?

ไม่ TOC จะไม่อัปเดตโดยอัตโนมัติ คุณจะต้องสร้างใหม่หากโครงสร้างเอกสารมีการเปลี่ยนแปลง

ฉันสามารถเชื่อมโยงรายการ TOC กับเอกสารภายนอกได้หรือไม่

ใช่ คุณสามารถใช้ไฮเปอร์ลิงก์เพื่อเชื่อมโยงรายการ TOC ไปยัง PDF หรือ URL ภายนอกได้

Aspose.PDF รองรับ TOC หลายระดับหรือไม่

ใช่ Aspose.PDF รองรับ TOC หลายระดับสำหรับเอกสารที่มีความซับซ้อนพร้อมหัวข้อย่อย