はじめに
PDF ドキュメントは情報やコンテンツの共有に広く使用され、ハイパーリンクを追加することで読者が簡単に関連する場所にアクセスできるようになります。例えば、文書内の特定のページ、ウェブサイト、メールアドレス、またはファイルへのリンクを作成することができます。Python で PDF にハイパーリンクを追加する方法について、この記事では詳しく説明します。
ツール
- Python 3.12.0
- Spire.PDF for Pythonライブラリ
このライブラリは購入する必要がありますが、30 日間の無料試用版も提供されています。
もっと多いサンプルコードについて、Spire.PDF for Pythonをダウンロードして参照してください。
準備
まず、Spire.PDF for Pythonと plum-dispatch v1.7.4を VS Code にインポートします。
1.Pythonをダウンロードしてインストールします。
2.VS Codeで「Extensions」をクリックし、「Python」を検索してインストールします。
3.「Explorer」-「NO FOLRDER OPENED」-「Open Folder」
4. フォルダーを選択し、そこに「.py」ファイルを追加します。
5.「Terminal」-「New Terminal」
6.次のコマンドを入力します。
pip install Spire.PDF
コードの説明
以下のコードでは、まず指定されたテキストを文書内で検索します。その後、すべての出現箇所についてループ処理を行い、各テキストの範囲に基づいてPdfUriAnnotationのインスタンスを作成します。PdfUriAnnotationクラスのプロパティを使用してハイパーリンクをカスタマイズします。最後に、PdfPageBase.AnnotationsWidget.Add(PdfUriAnnotation)メソッドを呼び出してハイパーリンクをテキストに追加します。
コード
from spire.pdf.common import *
from spire.pdf import *
# PdfDocument インスタンスを作成する
pdf = PdfDocument()
# PDF ファイルを読み込む
pdf.LoadFromFile("C:/Users/Administrator/Desktop/Sample.pdf")
# 最初のページを取得する
page = pdf.Pages[0]
# ページ上の指定されたテキストのすべての出現箇所を検索する
collection = page.FindText("Text", TextFindParameter.IgnoreCase)
# 指定されたテキストのすべての出現箇所をループで処理する
for find in collection.Finds:
# ハイパーリンク注釈を作成する
uri = PdfUriAnnotation(find.Bounds)
# ハイパーリンクの URL を設定する
uri.Uri = "URL"
# ハイパーリンク注釈の境界線を設定する
uri.Border = PdfAnnotationBorder(1.0)
# 境界線の色を設定する
uri.Color = PdfRGBColor(Color.get_Blue())
# ページにハイパーリンク注釈を追加する
page.AnnotationsWidget.Add(uri)
# 結果ファイルを保存する
pdf.SaveToFile("AddHyperlink.pdf")
pdf.Close()