チュートリアル

簡単にライブラリーを使用するためのチュートリアルコレクション

チュートリアル»Java»Spire.PDF for Java»リンク»Java:既存の PDF 内のテキストにハイパーリンクを追加する方法
2022-09-22

Java:既存の PDF 内のテキストにハイパーリンクを追加する方法

ハイパーリンクは通常、別のファイルやオブジェクトにリンクするアイコン、画像、テキストを基にしています。これは、文書を操作するために最も一般的に使用される機能の1つです。Spire.PDF for Java は、新しい PDF ドキュメントを作成し、そこに通常のリンク、ハイパーテキストリンク、メールリンク、ドキュメントリンクなど、様々なハイパーリンクを追加することをサポートしています。この記事では、既存の 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>8.8.3</version>
    </dependency>
</dependencies>

PDF 内のテキスト検索とハイパーリンクの追加

Spire PDF for Java を使用すると、特定の PDF ページで一致する全てのテキストを検索し、それらにハイパーリンクを追加することができます。以下は、その詳細な手順です。

  • PdfDocument クラスのインスタンスを作成し、PdfDocument.loadFromFile() メソッドを用いて PDF ドキュメントを読み込みます。
  • PdfDocument.getPages().get() メソッドを使用して、ドキュメントの特定のページを取得します。
  • PdfPageBase.findText(String searchPatternText, boolean isSearchWholeWord) メソッドを使用してページ内のすべてのマッチしたテキストを検索し、PdfTextFindCollection クラスのオブジェクトを返します。
  • 特定の検索結果の範囲に基づいて PdfUriAnnotation クラスのインスタンスを作成します。
  • PdfUriAnnotation.set(String value) メソッドを使用して注釈の URL アドレスを設定し、その境界線と色も設定します。
  • PdfPageBase.getAnnotationWidget().add() メソッドを使用して、新しい注釈として PDF の注釈集に URL 注釈を追加してください。
  • PdfDocument.saveToFile() メソッドを使用して、ドキュメントを保存します。
  • Java
import com.spire.pdf.*;
import com.spire.pdf.annotations.*;
import com.spire.pdf.general.find.*;
import com.spire.pdf.graphics.PdfRGBColor;
import java.awt.*;

public class searchTextAndAddHyperlink {
    public static void main(String[] args) {

        //PdfDocument クラスのインスタンスを作成する
        PdfDocument pdf = new PdfDocument();

        //PDFドキュメントを読み込む
        pdf.loadFromFile("C:/Sample.pdf");

        //最初のページを表示する
        PdfPageBase page = pdf.getPages().get(0);

        //マッチした文字列をすべて検索し、PdfTextFindCollection クラスのオブジェクトを返す
        PdfTextFindCollection collection = page.findText("Spire.PDF for Java", false);

        //検出されたコレクションをループする
        for(PdfTextFind find : collection.getFinds())
        {
            //検索されたテキストにハイパーリンクを追加するための PdfUriAnnotation クラスのインスタンスを作成する
            PdfUriAnnotation uri = new PdfUriAnnotation(find.getBounds());
            uri.setUri("https://jp.e-iceblue.com/introduce/spire-pdf-for-java.html");
            uri.setBorder(new PdfAnnotationBorder(1f));
            uri.setColor(new PdfRGBColor(Color.blue));
            page.getAnnotationsWidget().add(uri);
        }

        //ドキュメントを保存する
        pdf.saveToFile("テキストの検索とハイパーリンクの追加.pdf");
    }
}

Java:既存の PDF 内のテキストにハイパーリンクを追加する方法

一時ライセンスを申請する

結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。

Read 775 times