PDF 文書内のブックマークは、文書内の特定の場所にリンクされた書式付きテキストで構成されています。文書読者は、頻繁に上下にスクロールして内容を探す必要がなく、ページの横に表示されるしおりをクリックするだけで、文書内の適切な場所に移動することができます。ブックマークは、非常に大きな文書を閲覧する際に特に役立ちます。 よく整理されたブックマークは、目次としても活用できます。 また、大きな文書を作成する場合、重要な内容にはブックマークでリンクを張り、読みながら簡単に探せるようにします。 この記事では、Spire.PDF for Java を使用して PDF 文書にブックマークを追加、編集、削除する方法について説明します。
Spire.PDF for Java をインストールします
まず、Spire. PDF for Java を Java プロジェクトに追加する必要があります。JAR ファイルは、このリンクからダウンロードできます。Maven を使用する場合は、次のコードをプロジェクトの pom.xml ファイルに追加する必要があります。
<repositories>
<repository>
<id>com.e-iceblue</id>
<name>e-iceblue</name>
<url> https://repo.e-iceblue.com/nexus/content/groups/public/</url>
</repository>
</repositories>
<dependencies>
<dependency>
<groupId>e-iceblue</groupId>
<artifactId>spire.pdf</artifactId>
<version>9.1.4</version>
</dependency>
</dependencies>
PDF 文書にブックマークを追加する
PDF for Java は、PDF 文書にブックマークを追加するために、PdfDocument.getBookmarks().add() メソッドを提供しています。 メインブックマークを追加するだけでなく、PdfBookmark.add() メソッドを使ってメインブックマークにサブブックマークを追加できます。PdfBookmark クラスの下には、ブックマークのリンク対象、文字色や 文字スタイルなどを設定するメソッドが多数用意されています。 PDF 文書にブックマークを追加する詳細な手順は次のとおりです。
- PdfDocument クラスのオブジェクトを作成します。
- PdfDocument.loadFromFile() メソッドを使用して、PDFドキュメントを読み込みます。
- PDF 文書内のページをループして、ブックマークを追加し、そのスタイルを設定します。
- PdfDocument.getBookmarks().add() メソッドを使用して、ドキュメントにメインブックマークを追加します。
- PdfDestination クラスのオブジェクトを作成し、PdfBookmark.setAction() メソッドを使用して、メインブックマークのリンク対象を設定します。
- PdfBookmark.setColor() メソッドを使用して、メインブックマークの文字色を設定します。
- PdfBookmark.setDisplayStyle() メソッドを使用して、メインブックマークの文字書式を設定します。
- PdfBookmark.add() メソッドを使用して、メインブックマークにサブブックマークを追加します。
- 上記の方法で、サブブックマークのリンク対象、文字色、文字書式を設定します。
- PdfDocument.saveToFile() メソッドを使用して文書を保存します。
- Java
import com.spire.pdf.PdfDocument;
import com.spire.pdf.PdfPageBase;
import com.spire.pdf.actions.PdfGoToAction;
import com.spire.pdf.bookmarks.PdfBookmark;
import com.spire.pdf.bookmarks.PdfTextStyle;
import com.spire.pdf.general.PdfDestination;
import com.spire.pdf.graphics.PdfRGBColor;
import java.awt.*;
import java.awt.geom.Point2D;
public class addBookmark {
public static void main(String[] args) {
//PdfDocumentクラスのインスタンスを作成する
PdfDocument pdf = new PdfDocument();
//PDFファイルを読み込む
pdf.loadFromFile("地球には代替品がない.pdf");
//PDF文書内のページをループする
for(int i = 0; i< pdf.getPages().getCount();i++) {
PdfPageBase page = pdf.getPages().get(i);
//ブックマークを追加する
PdfBookmark bookmark = pdf.getBookmarks().add(String.format("ブックマーク-%s", i + 1));
//ブックマークのリンク先のページと場所を設定する
PdfDestination destination = new PdfDestination(page, new Point2D.Float(0, 0));
bookmark.setAction(new PdfGoToAction(destination));
//文字色を設定する
bookmark.setColor(new PdfRGBColor(new Color(139, 69, 19)));
//文字書式を設定する
bookmark.setDisplayStyle(PdfTextStyle.Bold);
//サブブックマークを追加する
PdfBookmark childBookmark = bookmark.add(String.format("サブブックマーク-%s", i + 1));
//リンク先のページと場所を設定する
PdfDestination childDestination = new PdfDestination(page, new Point2D.Float(0, 100));
childBookmark.setAction(new PdfGoToAction(childDestination));
//文字色を設定する
childBookmark.setColor(new PdfRGBColor(new Color(255, 127, 80)));
//文字書式を設定する
childBookmark.setDisplayStyle(PdfTextStyle.Italic);
}
//文書を保存する
pdf.saveToFile("ブックマークの追加.pdf");
}
}
PDF 文書内のブックマークを編集する
Spire.PDF for Java の PdfBookmark クラスのメソッドを使用して、PDF 文書のしおりを編集することもできます。 詳しい操作手順は以下の通りです。
- PdfDocument クラスのオブジェクトを作成します。
- PdfDocument.loadFromFile() メソッドを使用して、PDF ドキュメントを読み込みます。
- PdfDocument.getBookmarks().get() メソッドを使用して、1つ目のブックマークを取得します。
- PdfBookmark.setTitle() メソッドを使用して、ブックマークのタイトルを変更します。
- PdfBookmark.setColor() メソッドを使用して、ブックマークの文字色を変更します。
- PdfBookmark.setDisplayStyle() メソッドを使用して、ブックマークの文字書式を変更します。
- 上記の方法を使って、サブブックマークの文字色や書式を変更します。
- PdfDocument.saveToFile() メソッドを使用して、ドキュメントを保存します。
- Java
import com.spire.pdf.PdfDocument;
import com.spire.pdf.bookmarks.PdfBookmark;
import com.spire.pdf.bookmarks.PdfTextStyle;
import com.spire.pdf.graphics.PdfRGBColor;
import java.awt.*;
public class editBookmarks {
public static void main(String[] args) {
//PdfDocumentクラスのオブジェクトを作成する
PdfDocument doc = new PdfDocument();
//PDFファイルを読み込む
doc.loadFromFile("ブックマークの追加.pdf");
//1つ目のブックマークを取得する
PdfBookmark bookmark = doc.getBookmarks().get(0);
//ブックマークのタイトルを変更する
bookmark.setTitle("新しいタイトル");
//ブックマークの文字色を変更する
bookmark.setColor(new PdfRGBColor(new Color(255,0,0)));
//ブックマークの文字書式を変更する
bookmark.setDisplayStyle(PdfTextStyle.Italic);
//1つ目のブックマークのサブブックマークを編集する
for (PdfBookmark childBookmark : (Iterable) bookmark) {
childBookmark.setColor(new PdfRGBColor(new Color(0,0,255)));
childBookmark.setDisplayStyle(PdfTextStyle.Bold);
}
//ドキュメントを保存する
doc.saveToFile("ブックマークの編集.pdf");
doc.close();
}
}
PDF 文書からブックマークを削除する
Spire.PDF for Java を使用して、PDF ドキュメント内の単一、複数、またはすべてのブックマークを削除することもできます。 ここで、PdfDocument.getBookmarks().removeAt() メソッドは指定されたマスターブックマークを削除するために使用され、PdfDocument.getBookmarks().clear() メソッドはすべてのブックマークを削除するために使用され、PdfBookmark.removeAt() メソッドは1つのマスターブックマークの指定されたサブブックマークを削除するために使用されます。PDF ブックマークを削除する詳細な手順は次のとおりです。
- PdfDocument クラスのオブジェクトを作成します。
- PdfDocument.loadFromFile() メソッドを使用して、PDF ドキュメントを読み込みます。
- PdfDocument.getBookmarks().get() メソッドを使用して、1つ目のブックマークを取得します。
- PdfBookmark.removeAt() メソッドを使用して、1つ目のブックマークのサブブックマークを削除します。
- PdfDocument.saveToFile() メソッドを使用して、ドキュメントを保存します。
- Java
import com.spire.pdf.PdfDocument;
import com.spire.pdf.bookmarks.PdfBookmark;
public class deleteBookmarks {
public static void main(String[] args) {
//PdfDocumentクラスのオブジェクトを作成する
PdfDocument pdf = new PdfDocument();
//PDFファイルを読み込む
pdf.loadFromFile("ブックマークの追加.pdf");
//1つ目のブックマークを取得する
PdfBookmark pdfBookmark = pdf.getBookmarks().get(0);
//1番目のブックマークのサブブックマークを削除する
pdfBookmark.removeAt(0);
//1つ目のブックマークとそのサブブックマークを削除する
//pdf.getBookmarks().removeAt(0);
//すべてのブックマークを削除する
//pdf.getBookmarks().clear();
//ドキュメントを保存する
pdf.saveToFile("ブックマークの削除.pdf");
}
}
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。