การนำทางและการกระทำ

การนำทางและการกระทำ

การนำทางและการกระทำ

Aspose.PDF FOSS for .NET รองรับโครงสร้างการนำทาง PDF — bookmarks (outlines), page destinations, และ document actions. สิ่งเหล่านี้ทำให้คุณสามารถสร้างเอกสารเชิงโต้ตอบด้วยการนำทางแบบ table-of-contents navigation, cross-page links, และ JavaScript triggers.


โครงร่างเอกสาร (บุ๊กมาร์ก)

OutlineCollection เก็บต้นไม้ของบุ๊กมาร์กในเอกสาร แต่ละ OutlineItemCollection เป็นรายการบุ๊กมาร์กที่มีชื่อเรื่องและตำแหน่งปลายทาง.

using var doc = Document.Open(pdfBytes);

foreach (var item in doc.Outlines)
{
    Console.WriteLine($"Bookmark: {item.Title}");
}

การสร้างบุ๊กมาร์ก

using var doc = Document.Open(pdfBytes);

var bookmark = new OutlineItemCollection(doc.Outlines);
bookmark.Title = "Chapter 1";
bookmark.Action = new GoToAction(doc.Pages[1]);
doc.Outlines.Add(bookmark);

doc.Save("with-bookmarks.pdf");

การกระทำ GoTo

GoToAction ไปยังหน้าเฉพาะและประเภทการปรับให้พอดีภายในเอกสารเดียวกัน.

var goTo = new GoToAction(doc.Pages[3]);

การกระทำที่มีชื่อ

NamedAction เรียกใช้คำสั่งของโปรแกรมดู PDF ที่กำหนดไว้ล่วงหน้า เช่น NextPage, PrevPage, FirstPage และ LastPage.

var nextPage = PdfAction.CreateNamed("NextPage");

GoToRemote การกระทำ

GoToRemoteAction เปิดไฟล์ PDF ภายนอกและไปยังหน้าที่ระบุ.

var remote = new GoToRemoteAction("other.pdf", 1);

เริ่มการทำงาน

LaunchAction เปิดไฟล์ภายนอก (รูปแบบใดก็ได้) จากลิงก์ PDF.

var launch = new LaunchAction("readme.txt");

คอลเลกชันปลายทาง

DestinationCollection ทำการแมป named destinations ไปยังหน้า, รองรับการนำทางแบบอ้างอิงข้ามในเอกสารขนาดใหญ่.

var dest = doc.Destinations;
int pageNum = dest.GetPageNumber("section2");

เคล็ดลับและแนวทางปฏิบัติที่ดีที่สุด

  • สร้างโครงสร้างหนังสือหมายที่สะท้อนลำดับชั้นของส่วนในเอกสารของคุณเพื่อการนำทางที่เป็นธรรมชาติ
  • ใช้ GoToAction ร่วมกับ FitType เพื่อควบคุมวิธีการแสดงหน้าที่เป้าหมาย (fit width, fit page, เป็นต้น)
  • การกระทำที่ตั้งชื่อขึ้นอยู่กับโปรแกรมดู — ควรใช้ชื่อมาตรฐาน (NextPage, PrevPage, FirstPage, LastPage)
  • สำหรับลิงก์ข้ามเอกสาร ให้ใช้ GoToRemoteAction แทนการใช้ URI actions ที่ชี้ไปยังไฟล์ PDF
  • คอลเลกชันของ Action บนหน้าอนุญาตให้คุณเพิ่มหลาย Action ที่ทำงานเมื่อเปิดหน้า

ปัญหาทั่วไป

IssueCauseFix
บุ๊กมาร์คไม่ทำการนำทางไม่ได้ตั้งค่าการกระทำบนรายการโครงร่างกำหนด GoToAction ให้กับ OutlineItemCollection.Action
การกระทำ GoTo ชี้เป้าหน้าผิดดัชนีหน้าถูกนับจาก 0 ภายในแต่หน้าถูกนับจาก 1ใช้ doc.Pages[n] โดยตรงในตัวสร้าง GoToAction
การกระทำที่มีชื่อไม่มีผลโปรแกรมดูไม่รองรับการกระทำที่มีชื่อใช้ชื่อมาตรฐานเท่านั้น

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

ฉันจะสร้างสารบัญอย่างไร?

สร้าง OutlineItemCollection รายการสำหรับแต่ละส่วน, แต่ละรายการด้วย
GoToAction ที่มุ่งเป้าไปยังหน้าที่หนึ่งของส่วนนั้น.

ฉันสามารถซ้อนบุ๊กมาร์กได้หรือไม่?

ใช่. เพิ่มรายการลูก OutlineItemCollection ไปยังบุ๊กมาร์กพาเรนต์เพื่อสร้างโครงร่างแบบลำดับชั้น.

ประเภทการปรับขนาดที่มีให้สำหรับการกระทำ GoTo มีอะไรบ้าง?

Fit, FitH (ปรับความกว้าง), FitV (ปรับความสูง), FitR (ปรับสี่เหลี่ยม), และ FitB (ปรับกล่องขอบเขต).


API สรุปอ้างอิง

Class / MethodDescription
OutlineCollectionคอลเลกชันของบุ๊กมาร์กระดับบนสุดในเอกสาร
OutlineItemCollectionรายการบุ๊กมาร์กเดี่ยวที่มีหัวเรื่องและการกระทำ
GoToActionนำทางไปยังหน้าภายในเอกสารเดียวกัน
GoToRemoteActionนำทางไปยังหน้าภายใน PDF ภายนอก
LaunchActionเปิดไฟล์ภายนอก
NamedActionเรียกใช้คำสั่งตัวดูที่กำหนดไว้ล่วงหน้า
PdfAction.CreateGoToโรงงานสำหรับการกระทำ GoTo
PdfAction.CreateNamedโรงงานสำหรับการกระทำที่มีชื่อ
ActionCollectionคอลเลกชันของการกระทำบนหน้า หรือคำอธิบายประกอบ
DestinationCollectionทะเบียนปลายทางที่มีชื่อ
ActionTypeการนับประเภท: GoTo, URI, JavaScript, Named, Launch

ดูเพิ่มเติม

 ภาษาไทย