PDF のブックマークは、ユーザーが特定のセクションやページに素早く移動できるナビゲーション機能です。ワンクリックで目的の場所にジャンプでき、長い文書を手動でスクロールしたり、特定の内容を探す手間を省くことができます。この記事では、Spire.PDF for .NET を使用して、プログラムで PDF 文書にブックマークを追加、編集、削除する方法を紹介します。 C# で PDF 文書にブックマークを追加する C# で PDF 文書内のブックマークを編集する C# で PDF 文書からブックマークを削除する Spire.PDF for .NET をインストールします まず、Spire.PDF for .NET パッケージに含まれている DLL ファイルを .NET プロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。 PM> Install-Package Spire.PDF C# で PDF 文書にブックマークを追加する Spire.PDF for .NET は、PdfDocument.Bookmarks.Add() メソッドを提供しており、これを使って PDF 文書にブックマークを追加できます。ブックマークを作成した後、PdfBookmark.Add() メソッドを使用して、サブブックマークも追加できます。以下に、詳細な手順を示します。 PdfDocument オブジェクトを作成する。 PdfDocument.LoadFromFile() メソッドを使って PDF ファイルを読み込む。 PDF ファイル内の全ページをループして、ブックマークを追加し、スタイルを設定する。 PdfDocument.Bookmarks.Add() メソッドを使用して、親ブックマークを文書に追加する。 PdfDestination オブジェクトを作成し、PdfBookmark.Action プロパティを使って親ブックマークの移動先を設定する。 親ブックマークのテキスト色とスタイルを設定する。 PdfBookmark.Add() メソッドを使って、親ブックマークにサブブックマークを追加する。 サブブックマークの移動先、テキスト色、テキストスタイルを設定する。 PdfDocument.SaveToFile() メソッドを使用して、文書を保存する。 C# using System.Drawing; using Spire.Pdf; using Spire.Pdf.Graphics; using Spire.Pdf.Actions; using Spire.Pdf.Bookmarks; using Spire.Pdf.General; namespace AddBookmark { class Program { static void Main(string[] args) { //PdfDocumentオブジェクトを作成 PdfDocument pdf = new PdfDocument(); //サンプルPDFファイルを読み込む pdf.LoadFromFile("Sample.pdf"); //PDFファイルのページをループする for (int i = 0; i < pdf.Pages.Count; i++) { PdfPageBase page = pdf.Pages[i]; //ブックマークを追加 PdfBookmark bookmark = pdf.Bookmarks.Add(string.Format("ブックマーク-{0}", i + 1)); //ブックマークの目的のページと位置を設定 PdfDestination destination = new PdfDestination(page, new PointF(0, 0)); bookmark.Action = new PdfGoToAction(destination); //ブックマークのテキストの色とスタイルを設定 bookmark.Color = new PdfRGBColor(Color.Black); bookmark.DisplayStyle = PdfTextStyle.Bold; //子ブックマークを追加 PdfBookmark childBookmark = bookmark.Add(string.Format("サブブックマーク-{0}", i + 1)); //子ブックマークの目的のページと位置を設定 PdfDestination childDestination = new PdfDestination(page, new PointF(0, 100)); childBookmark.Action = new PdfGoToAction(childDestination); //子ブックマークのテキストの色とスタイルを設定 childBookmark.Color = new PdfRGBColor(Color.Brown); childBookmark.DisplayStyle = PdfTextStyle.Italic; } //結果ファイルを保存 pdf.SaveToFile("output/ブックマークを追加.pdf"); pdf.Close(); } } } C# で PDF 文書内のブックマークを編集する 既存のブックマークを更新する場合、PdfBookmark クラスのメソッドを使用して、ブックマークの名前を変更したり、テキストの色やスタイルを変更できます。以下に、詳細な手順を示します。 PdfDocument オブジェクトを作成する。 PdfDocument.LoadFromFile() メソッドを使って PDF ファイルを読み込む。 PdfDocument.Bookmarks[] プロパティを使って、指定したブックマークを取得する。 PdfBookmark.Title プロパティを使って、ブックマークのタイトルを変更する。 PdfBookmark.Color プロパティを使って、ブックマークのフォントの色を変更する。 PdfBookmark.DisplayStyle プロパティを使って、ブックマークのテキストスタイルを変更する。 上記のメソッドを使用して、サブブックマークのテキスト色やスタイルを変更する。 PdfDocument.SaveToFile() メソッドを使用して、文書を保存する。 C# using Spire.Pdf; using Spire.Pdf.Bookmarks; using System.Drawing; namespace ModifyBookmarks { class Program { static void Main(string[] args) { //PdfDocumentオブジェクトを作成 PdfDocument pdf = new PdfDocument(); //サンプルPDFファイルを読み込む pdf.LoadFromFile("output/ブックマークを追加.Pdf"); //最初のブックマークを取得 PdfBookmark bookmark = pdf.Bookmarks[0]; //ブックマークのタイトルを変更 bookmark.Title = "変更されたブックマーク"; //ブックマークのテキストの色とスタイルを変更 bookmark.Color = Color.Red; bookmark.DisplayStyle = PdfTextStyle.Italic; //最初のブックマークのサブブックマークを編集 foreach (PdfBookmark childBookmark in bookmark) { childBookmark.Color = Color.Blue; childBookmark.DisplayStyle = PdfTextStyle.Bold; } //結果ファイルを保存 pdf.SaveToFile("output/ブックマークを編集.Pdf"); pdf.Close(); } } } C# で PDF 文書からブックマークを削除する Spire.PDF for .NET では、特定のブックマークだけでなく、PDF ファイル内のすべてのブックマークを削除することが可能です。また、特定のサブブックマークだけを削除することもできます。以下に、詳細な手順を示します。 PdfDocument オブジェクトを作成する。 PdfDocument.LoadFromFile() メソッドを使って PDF ファイルを読み込む。 PdfDocument.Bookmarks[] プロパティを使って、最初のブックマークを取得する。 PdfBookmark.RemoveAt() メソッドを使って、最初のブックマークの指定したサブブックマークを削除する。 PdfDocument.Bookmarks.RemoveAt() メソッドを使って、指定したブックマークとそのサブブックマークを削除する。または、PdfDocument.Bookmarks.Clear() メソッドを使って、PDF ファイル内のすべてのブックマークを削除することも可能です。 PdfDocument.SaveToFile() メソッドを使用して、文書を保存する。 C# using Spire.Pdf; using Spire.Pdf.Bookmarks; namespace DeleteBookmarks { class Program { static void Main(string[] args) { //PdfDocumentオブジェクトを作成 PdfDocument pdf = new PdfDocument(); //サンプルPDFファイルを読み込む pdf.LoadFromFile("output/ブックマークを追加.Pdf"); //最初のブックマークを取得 PdfBookmark bookmark = pdf.Bookmarks[0]; //最初のブックマークの最初のサブブックマークを削除 bookmark.RemoveAt(0); //2番目のブックマークとそのサブブックマークを削除 pdf.Bookmarks.RemoveAt(1); //すべてのブックマークを削除 //pdf.Bookmarks.Clear(); //結果ファイルを保存 pdf.SaveToFile("output/ブックマークを削除.pdf"); pdf.Close(); } } } 一時ライセンスを申請する 結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。 にお問い合わせ、30 日間有効な一時ライセンスを取得してください。