PDF は編集用ではないことはわかっていますが、PDF を解析して変更し、すべてのテキスト要素をハイパーリンクに変換する必要があるという要件があります。これを達成する方法はありますか?
どうもありがとう、
PDF は編集用ではないことはわかっていますが、PDF を解析して変更し、すべてのテキスト要素をハイパーリンクに変換する必要があるという要件があります。これを達成する方法はありますか?
どうもありがとう、
テキスト要素をハイパーリンクに変換するには、複数の操作が必要です。
プレーンテキストだけでなく、テキストの場所も抽出するというひねりを加えて、テキスト抽出を適用する必要があります。
その抽出されたテキストと場所で、ハイパーリンクを作成するすべてのテキスト部分を見つける必要があります。
それらを見つけたら、それらの場所を取得し、適切な注釈を追加してハイパーリンクを作成します。
場所を指定したテキストの抽出は、バリアントを実装する iText LocationTextExtractionStrategy
(この回答を参照。iTextSharp 用に記述されていますが、同じ原則が適用されます) および PDFBox オーバーライドで実行できますPDFTextStripper.writeString(String, List<TextPosition>)
。