ブックマークとアウトラインを PDF に追加する方法

Chaknith related to ブックマークとアウトラインを PDF に追加する方法
チャクニット・ビン
2023年5月25日
更新済み 2024年12月10日
共有:
This article was translated from English: Does it need improvement?
Translated
View the article in English

C#プロジェクトにブックマークとしても知られるPDFアウトラインを含めることで、ユーザビリティとUXデザインを大幅に向上させることができます。 PDFアウトラインは、ナビゲーションツールとして機能し、目次のようにドキュメント内の主要なページに簡単にアクセスできるようにします。 PDFのアウトラインを組み込むことで、ドキュメントの直感的でユーザーフレンドリーな体験を提供することができます。

IronPDFを始めましょう

今日から無料トライアルでIronPDFをあなたのプロジェクトで使い始めましょう。

最初のステップ:
green arrow pointer




アウトラインとブックマークを追加する例

Adobe Acrobat Reader では、アウトライン(しおりとも呼ばれる)が左サイドバーに表示され、ドキュメントの主要セクションに簡単にジャンプできるようになります。

IronPDFを使用すると、PDFドキュメントをインポートし、既存のアウトラインに対して様々な操作を行うことができます。たとえば、ブックマークの追加、並べ替え、プロパティの編集、削除などが可能です。 これにより、PDFファイルの組織と構造を完全に管理することができます。

ヒント
すべてのページのインデックスはゼロベース・インデックスに従います。

ブックマークの単一層を追加

IronPDFでブックマークを追加するのは簡単なプロセスです。 ブックマーク名と対応するページインデックスを指定する必要があるAddBookmarkAtEndメソッドを使用できます。

:path=/static-assets/pdf/content-code-examples/how-to/bookmarks-single-layer-bookmark.cs
using IronPdf;

// Create a new PDF or edit an existing document.
PdfDocument pdf = PdfDocument.FromFile("existing.pdf");

// Add a bookmark
pdf.Bookmarks.AddBookMarkAtEnd("NameOfBookmark", 0);

// Add a sub-bookmark
pdf.Bookmarks.AddBookMarkAtEnd("NameOfSubBookmark", 1);

pdf.SaveAs("singleLayerBookmarks.pdf");

単層ブックマークドキュメント

複数のブックマークレイヤーを追加

IronPDFを使用すると、ツリー構造でブックマークを追加することができます。これは、大規模なPDFドキュメントでのナビゲーションを維持するために特に便利です。 この機能は、一つのPDFドキュメントに含まれる、様々な日付や場所からの試験用紙、販売報告書、または領収書記録の大量コレクションを処理する際に便利です。

AddBookMarkAtEnd メソッドは、子ブックマークを追加できるようにするIPdfBookMark オブジェクトを返します。 例えば、Children.AddBookMarkAtStart("Date1", 0) または Children.AddBookMarkAtEnd("Date1", 0) を使用して、「Examination」ブックマークに子ブックマークを追加できます。 以下のコードはこの概念を示しています:

:path=/static-assets/pdf/content-code-examples/how-to/bookmarks-multi-layer-bookmark.cs
using IronPdf;

// Load existing PDF document
PdfDocument pdf = PdfDocument.FromFile("examinationPaper.pdf");

// Assign IPdfBookMark object to a variable
var mainBookmark = pdf.Bookmarks.AddBookMarkAtEnd("Examination", 0);

// Add bookmark for days
var date1Bookmark = mainBookmark.Children.AddBookMarkAtStart("Date1", 1);

// Add bookmark for type of test
var paperBookmark = date1Bookmark.Children.AddBookMarkAtStart("Paper", 1);
paperBookmark.Children.AddBookMarkAtEnd("PersonA", 3);
paperBookmark.Children.AddBookMarkAtEnd("PersonB", 4);

// Add bookmark for days
var date2Bookmark = mainBookmark.Children.AddBookMarkAtEnd("Date2", 5);

// Add bookmark for type of test
var computerBookmark = date2Bookmark.Children.AddBookMarkAtStart("Computer", 5);
computerBookmark.Children.AddBookMarkAtEnd("PersonC", 6);
computerBookmark.Children.AddBookMarkAtEnd("PersonD", 7);

pdf.SaveAs("multiLayerBookmarks.pdf");

マルチレイヤーブックマークドキュメント

ブックマークリストを取得

IronPDF を使用すると、PDF ドキュメントのブックマークを簡単に取得および表示できます。 ブックマークツリーをナビゲートすることは簡単で、さまざまなセクションへのシームレスなアクセスを提供します。 上記のマルチレイヤーブックマーク文書の例を考えてみましょう。

「Examination」ブックマークには、「Date1」および「Date2」ブックマークを指すChildrenプロパティが設定されます。 "Date1" ブックマークには "Date2" ブックマークを指す NextBookmark プロパティがあります。 さらに、「Date1」ブックマークには「Paper」ブックマークを含むChildrenプロパティがあります。

開いたPDFドキュメントに存在するすべてのブックマークを取得するには、GetAllBookmarks メソッドを使用できます。 これにより、すべてのブックマークの包括的なリストが提供され、ブックマークの構造をさらに分析して活用することができます。

:path=/static-assets/pdf/content-code-examples/how-to/bookmarks-retrieve-bookmark.cs
using IronPdf;

// Load existing PDF document
PdfDocument pdf = PdfDocument.FromFile("multiLayerBookmarks.pdf");

// Retrieve bookmarks list
var mainBookmark = pdf.Bookmarks.GetAllBookmarks();

次の内容にご注意ください。
同じ名前のしおりを持つ2つのPDF文書をマージすると、しおりリストが乱れる可能性があります。

{w:(ページインデックスから作成されたブックマークのみがサポートされています。 PDFドキュメント内の他の部分や要素から作成されたブックマークは、ページインデックスの値が-1に設定されます。

次の記事で、HTMLからPDFを生成する際に目次を作成する方法を学びます:「Creating a Table of Contents with IronPDF」。

Chaknith related to ブックマークリストを取得
ソフトウェアエンジニア
チャクニットは開発者のシャーロック・ホームズです。彼がソフトウェアエンジニアリングの将来性に気付いたのは、楽しみでコーディングチャレンジをしていたときでした。彼のフォーカスはIronXLとIronBarcodeにありますが、すべての製品でお客様を助けることに誇りを持っています。チャクニットは顧客と直接話すことで得た知識を活用して、製品自体のさらなる改善に貢献しています。彼の逸話的なフィードバックは、単なるJiraチケットを超えて、製品開発、ドキュメントおよびマーケティングをサポートし、顧客の全体的な体験を向上させます。オフィスにいないときは、機械学習やコーディングについて学んだり、ハイキングを楽しんだりしています。