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

This article was translated from English: Does it need improvement?
Translated
View the article in English

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

    • 申し訳ありませんが、翻訳を行うための具体的なコンテンツが提供されていません。翻訳したい英語のテキストを入力してください。

    • 申し訳ありませんが、翻訳を行うための具体的なコンテンツが提供されていません。翻訳したい英語のテキストを入力してください。

    PDF 用 C# NuGet ライブラリ

    でインストール NuGet

    Install-Package IronPdf
    または
    Java PDF JAR(ジャバPDF JAR)

    ダウンロード DLL (ディーエルエル)

    DLLをダウンロード

    プロジェクトに手動でインストールする

    PDF 用 C# NuGet ライブラリ

    でインストール NuGet

    Install-Package IronPdf
    または
    Java PDF JAR(ジャバPDF JAR)

    ダウンロード DLL (ディーエルエル)

    DLLをダウンロード

    プロジェクトに手動でインストールする

    今日からプロジェクトでIronPDFを使い始めましょう。無料のトライアルをお試しください。

    最初のステップ:
    green arrow pointer

    チェックアウト IronPDF オン Nuget 迅速なインストールと展開のために。8百万以上のダウンロード数により、PDFをC#で変革しています。

    PDF 用 C# NuGet ライブラリ nuget.org/packages/IronPdf/
    Install-Package IronPdf

    インストールを検討してください IronPDF DLL 直接。ダウンロードして、プロジェクトまたはGACの形式で手動でインストールしてください。 IronPdf.zip

    プロジェクトに手動でインストールする

    DLLをダウンロード

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

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");
Imports IronPdf

' Create a new PDF or edit an existing document.
Private pdf As PdfDocument = 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")
VB   C#

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

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

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");
Imports IronPdf

' Load existing PDF document
Private pdf As PdfDocument = PdfDocument.FromFile("examinationPaper.pdf")

' Assign IPdfBookMark object to a variable
Private mainBookmark = pdf.Bookmarks.AddBookMarkAtEnd("Examination", 0)

' Add bookmark for days
Private date1Bookmark = mainBookmark.Children.AddBookMarkAtStart("Date1", 1)

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

' Add bookmark for days
Dim date2Bookmark = mainBookmark.Children.AddBookMarkAtEnd("Date2", 5)

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

pdf.SaveAs("multiLayerBookmarks.pdf")
VB   C#

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

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

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();
Imports IronPdf

' Load existing PDF document
Private pdf As PdfDocument = PdfDocument.FromFile("multiLayerBookmarks.pdf")

' Retrieve bookmarks list
Private mainBookmark = pdf.Bookmarks.GetAllBookmarks()
VB   C#

次の内容にご注意ください。
ブックマークに同じ名前が付いている2つのPDFドキュメントを結合すると、ブックマークリストに乱れが生じる可能性があります。

[{私はあなたが提供するテキスト内容を日本語に翻訳いたします。よろしければ、翻訳したい内容をこちらに入力してください。(ページインデックスから作成されたブックマークのみがサポートされます。 他の部分やPDFドキュメント内の要素から作成されたブックマークは、ページインデックス値が -1 に設定されます。)}]

次の記事で、HTMLからPDFを生成する際に目次を作成する方法を学びましょう:目次を追加する方法."

チャクニット・ビン

ソフトウェアエンジニア

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