บุ๊กมาร์กในไฟล์ PDF ช่วยในการทำเครื่องหมายจุดสนใจในเอกสาร สิ่งเหล่านี้ทำให้คุณสามารถข้ามไปยังจุดที่ต้องการในเอกสารได้อย่างรวดเร็ว คุณอาจพบว่าตัวเองอยู่ในสถานการณ์ที่ต้องเพิ่ม อ่าน แก้ไข หรือลบบุ๊กมาร์กในไฟล์ PDF โดยทางโปรแกรม ด้วยเหตุนี้ บทความนี้จะสอนวิธีทำงานกับบุ๊กมาร์กในไฟล์ PDF โดยใช้ C++
- C ++ API สำหรับการทำงานกับบุ๊กมาร์กในไฟล์ PDF
- เพิ่มบุ๊กมาร์กในไฟล์ PDF โดยใช้ C++
- เพิ่มที่คั่นหน้าซ้อนกันในไฟล์ PDF
- อ่านบุ๊กมาร์กจากไฟล์ PDF โดยใช้ C++
- แก้ไขชื่อบุ๊กมาร์กโดยใช้ C++
- ลบบุ๊กมาร์กเฉพาะโดยใช้ C ++
- ลบบุ๊กมาร์กทั้งหมดในไฟล์ PDF โดยใช้ C++
- รับใบอนุญาตฟรี
C ++ API สำหรับการทำงานกับบุ๊กมาร์กในไฟล์ PDF
Aspose.PDF for C++ คือไลบรารี C++ ที่ให้คุณสร้าง อ่าน และอัปเดตเอกสาร PDF นอกจากนี้ API ยังรองรับการเพิ่ม อ่าน แก้ไข และลบบุ๊กมาร์กออกจากไฟล์ PDF คุณสามารถติดตั้ง API ผ่าน NuGet หรือดาวน์โหลดโดยตรงจากส่วน ดาวน์โหลด
PM> Install-Package Aspose.PDF.Cpp
เพิ่มบุ๊กมาร์กในไฟล์ PDF โดยใช้ C++
ต่อไปนี้เป็นขั้นตอนในการเพิ่มบุ๊กมาร์กในไฟล์ PDF
- ขั้นแรก สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
- โหลดเอกสาร PDF โดยใช้ PdfBookmarkEditor->BindPdf(System::SharedPtrAspose::Pdf::Document srcDoc) วิธีการ
- สร้างบุ๊กมาร์กโดยใช้เมธอด PdfBookmarkEditor->CreateBookmarkOfPage(System::String bookmarkName, int32t pageNumber)
- บันทึกเอกสาร PDF โดยใช้วิธี PdfBookmarkEditor->Save(System::String destFile)
โค้ดตัวอย่างต่อไปนี้สาธิตวิธีเพิ่มบุ๊กมาร์กในไฟล์ PDF โดยใช้ C++
// สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();
// โหลดเอกสาร PDF
editor->BindPdf(u"SourceDirectory\\Sample 1.pdf");
// สร้างบุ๊กมาร์ก
editor->CreateBookmarkOfPage(u"Bookmark for page 1", 1);
// บันทึกเอกสาร PDF
editor->Save(u"OutputDirectory\\AddBookmark_out.pdf");
เพิ่มที่คั่นหน้าซ้อนกันในไฟล์ PDF
คุณยังสามารถเพิ่มบุ๊กมาร์กที่ซ้อนกันโดยใช้ Aspose.PDF for C++ API ต่อไปนี้เป็นขั้นตอนในการเพิ่มที่คั่นหน้าแบบซ้อน
- สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
- โหลดเอกสาร PDF โดยใช้ PdfBookmarkEditor->BindPdf(System::SharedPtrAspose::Pdf::Document srcDoc) วิธีการ
- สร้างบุ๊กมาร์กโดยใช้คลาส บุ๊กมาร์ก
- เพิ่มบุ๊กมาร์กย่อยในอินสแตนซ์ของคลาส บุ๊กมาร์ก และตั้งค่าเป็นบุ๊กมาร์กย่อยของบุ๊กมาร์กหลักโดยใช้ bookmark->setChildItems(System::SharedPtr ค่า) วิธีการ
- เพิ่มบุ๊กมาร์กในเอกสาร PDF โดยใช้ PdfBookmarkEditor->CreateBookmarks(System::SharedPtr ที่คั่นหน้า) วิธีการ
- สุดท้าย บันทึกเอกสาร PDF โดยใช้เมธอด PdfBookmarkEditor->Save(System::String destFile)
โค้ดตัวอย่างต่อไปนี้แสดงวิธีเพิ่มที่คั่นหน้าแบบซ้อนในไฟล์ PDF โดยใช้ C++
// สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();
// โหลดเอกสาร PDF
editor->BindPdf(u"SourceDirectory\\Sample 1.pdf");
// สร้างที่คั่นหน้าลูกคนที่ 1
System::SharedPtr<Aspose::Pdf::Facades::Bookmark> bm1 = System::MakeObject<Aspose::Pdf::Facades::Bookmark>();
bm1->set_PageNumber(1);
bm1->set_Title(u"First child");
// สร้างที่คั่นหน้าลูกคนที่ 2
System::SharedPtr<Aspose::Pdf::Facades::Bookmark> bm2 = System::MakeObject<Aspose::Pdf::Facades::Bookmark>();
bm2->set_PageNumber(2);
bm2->set_Title(u"Second child");
// สร้างบุ๊กมาร์กผู้ปกครอง
System::SharedPtr<Aspose::Pdf::Facades::Bookmark> bm = System::MakeObject<Aspose::Pdf::Facades::Bookmark>();
bm->set_Action(u"GoTo");
bm->set_PageNumber(1);
bm->set_Title(u"Parent");
// ตั้งค่าที่คั่นหน้าเด็ก
System::SharedPtr<Aspose::Pdf::Facades::Bookmarks> bms = System::MakeObject<Aspose::Pdf::Facades::Bookmarks>();
bms->Add(bm1);
bms->Add(bm2);
bm->set_ChildItem(bms);
// เพิ่มบุ๊กมาร์กลงในไฟล์ PDF
editor->CreateBookmarks(bm);
// บันทึกเอกสาร PDF
editor->Save(u"OutputDirectory\\AddChildBookmark_out.pdf");
อ่านบุ๊กมาร์กจากไฟล์ PDF โดยใช้ C++
หากต้องการอ่านบุ๊กมาร์ก ให้ใช้วิธี PdfBookmarkEditor->ExtractBookmarks() ต่อไปนี้เป็นขั้นตอนในการอ่านบุ๊กมาร์กจากไฟล์ PDF
- สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
- โหลดเอกสาร PDF โดยใช้ PdfBookmarkEditor->BindPdf(System::SharedPtrAspose::Pdf::Document srcDoc) วิธีการ
- ดึงบุ๊กมาร์กทั้งหมดโดยใช้เมธอด PdfBookmarkEditor->ExtractBookmarks()
- วนซ้ำบุ๊กมาร์กเพื่อเรียกบุ๊กมาร์กแต่ละรายการ
- อ่านคุณสมบัติของบุ๊กมาร์ก
โค้ดตัวอย่างต่อไปนี้แสดงวิธีการอ่านบุ๊กมาร์กจากไฟล์ PDF โดยใช้ C++
// สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();
// โหลดเอกสาร PDF
editor->BindPdf(u"SourceDirectory\\BookmarkSample.pdf");
// ดึงบุ๊กมาร์กทั้งหมด
System::SharedPtr <Bookmarks> bms = editor->ExtractBookmarks();
// วนซ้ำผ่านบุ๊กมาร์ก
for (System::SharedPtr<Bookmark> bm : bms) {
// แสดงชื่อเรื่องของบุ๊กมาร์ก
Console::WriteLine(bm->get_Title());
// แสดงปลายทางของ Bookmark
Console::WriteLine(bm->get_Destination());
}
แก้ไขชื่อบุ๊กมาร์กโดยใช้ C++
ต่อไปนี้เป็นขั้นตอนในการแก้ไขชื่อบุ๊กมาร์กที่มีอยู่ในไฟล์ PDF
- สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
- โหลดเอกสาร PDF โดยใช้ PdfBookmarkEditor->BindPdf(System::SharedPtrAspose::Pdf::Document srcDoc) วิธีการ
- แก้ไขชื่อเรื่องของบุ๊กมาร์กโดยใช้เมธอด PdfBookmarkEditor->ModifyBookmarks(System::String sTitle, System::String dTitle)
- บันทึกเอกสาร PDF โดยใช้วิธี PdfBookmarkEditor->Save(System::String destFile)
โค้ดตัวอย่างต่อไปนี้จะสาธิตวิธีการแก้ไขชื่อเรื่องของบุ๊กมาร์กที่มีอยู่ในไฟล์ PDF
// สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();
// โหลดเอกสาร PDF
editor->BindPdf(u"SourceDirectory\\BookmarkSample.pdf");
// แก้ไขชื่อบุ๊กมาร์ก
editor->ModifyBookmarks(u"bookmark for page 1", u"Page 1 Bookmark");
// บันทึกเอกสาร PDF
editor->Save(u"OutputDirectory\\ModifyBookmark_out.pdf");
ลบบุ๊กมาร์กเฉพาะโดยใช้ C ++
API มีเมธอด PdfBookmarkEditor->DeleteBookmarks(System::String title) เพื่อลบบุ๊กมาร์กเฉพาะออกจากไฟล์ PDF ต่อไปนี้เป็นขั้นตอนในการลบบุ๊กมาร์กเฉพาะ
- สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
- โหลดเอกสาร PDF โดยใช้ PdfBookmarkEditor->BindPdf(System::SharedPtrAspose::Pdf::Document srcDoc) วิธีการ
- ลบบุ๊กมาร์กที่ต้องการโดยใช้เมธอด PdfBookmarkEditor->DeleteBookmarks(System::String title)
- บันทึกเอกสาร PDF โดยใช้วิธี PdfBookmarkEditor->Save(System::String destFile)
โค้ดตัวอย่างต่อไปนี้แสดงวิธีการลบบุ๊กมาร์กเฉพาะโดยใช้ C++
// สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();
// โหลดเอกสาร PDF
editor->BindPdf(u"SourceDirectory\\BookmarkSample.pdf");
// ลบบุ๊กมาร์กเฉพาะ
editor->DeleteBookmarks(u"bookmark for page 1");
// บันทึกเอกสาร PDF
editor->Save(u"OutputDirectory\\DeleteParticularBookmark_out.pdf");
ลบบุ๊กมาร์กทั้งหมดในไฟล์ PDF โดยใช้ C++
แทนที่จะลบบุ๊กมาร์กทีละรายการ คุณสามารถลบบุ๊กมาร์กทั้งหมดพร้อมกันโดยใช้เมธอด PdfBookmarkEditor->DeleteBookmarks() ต่อไปนี้เป็นขั้นตอนในการลบบุ๊กมาร์กทั้งหมดในไฟล์ PDF
- สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
- โหลดเอกสาร PDF โดยใช้ PdfBookmarkEditor->BindPdf(System::SharedPtrAspose::Pdf::Document srcDoc) วิธีการ
- ลบบุ๊กมาร์กทั้งหมดโดยใช้เมธอด PdfBookmarkEditor->DeleteBookmarks()
- บันทึกเอกสาร PDF โดยใช้วิธี PdfBookmarkEditor->Save(System::String destFile)
ต่อไปนี้คือโค้ดตัวอย่างในการลบบุ๊กมาร์กทั้งหมดในไฟล์ PDF
// สร้างอินสแตนซ์ของคลาส PdfBookmarkEditor
System::SharedPtr<Aspose::Pdf::Facades::PdfBookmarkEditor> editor = System::MakeObject<Aspose::Pdf::Facades::PdfBookmarkEditor>();
// โหลดเอกสาร PDF
editor->BindPdf(u"SourceDirectory\\BookmarkSample.pdf");
// ลบบุ๊กมาร์กทั้งหมด
editor->DeleteBookmarks();
// บันทึกเอกสาร PDF
editor->Save(u"OutputDirectory\\DeleteAllBookmarks_out.pdf");
รับใบอนุญาตฟรี
คุณสามารถลองใช้ API ได้โดยไม่มีข้อจำกัดในการประเมินโดยขอ ใบอนุญาตชั่วคราวฟรี
บทสรุป
ในบทความนี้ คุณได้เรียนรู้วิธีการทำงานกับบุ๊กมาร์กในไฟล์ PDF โดยใช้ C++ โดยเฉพาะอย่างยิ่ง คุณได้เรียนรู้วิธีเพิ่ม อ่าน แก้ไข และลบบุ๊กมาร์กในไฟล์ PDF นอกจากนี้ คุณได้เห็นวิธีเพิ่มบุ๊กมาร์กที่ซ้อนกันโดยใช้ Aspose.PDF for C++ API API มีคุณสมบัติเพิ่มเติมมากมายสำหรับการทำงานกับไฟล์ PDF ที่คุณสามารถสำรวจโดยละเอียดได้โดยใช้ เอกสารอย่างเป็นทางการ หากคุณมีคำถามใดๆ โปรดติดต่อเราได้ที่ ฟอรัมสนับสนุนฟรี