PDF内の文字データを扱うTextサンプル
Adobe PDF Libraryには、開発環境毎に様々な機能のサンプルコードが提供されています。今回はその中の一つ、.NET用サンプルに含まれる、Textカテゴリーをご紹介します。
Textのサンプルは、PDFとテキスト(文字)に関係するたくさんのサンプルプログラムが提供されています。例えば、PDFに文字を追加したりすることや、また逆に抽出したりすることなどが可能です。また、注釈やPDFの特定の領域から文字を抽出したりするサンプルもあります。
Text サンプル一覧
Adobe PDF Libraryの.NET用のサンプルとして、Textは14種類あります。以下にご紹介します。
AddGlyphs
このサンプルを使用すると、新しい PDF ファイルを作成し、ページにグリフを追加し、個々のグリフIDコードで管理します。
AddUnicodeText
このサンプルは、6つの異なる言語で、6行のUnicodeテキストをPDF ファイルに追加します。
AddVerticalText
このサンプルは、ページの上から下へテキストをレンダリングする方法を説明します。サンプル テキストを表示するために、一連の Unicode 文字を含むWriting Mode「Vertical」(縦書き)を提供します。
サンプルには、Unicode 文字の行が複数あり、縦書きのテキストが複数列表示されます。文字は、英語のほか、中国語、日本語、韓国語で表示されます。
ExtractAcroFormFieldData
このサンプルは、PDFドキュメント内のAcroFormフィールドからテキストを抽出し、そのテキストをファイルに保存します。
ExtractCJKTextByPatternMatch
このサンプルは、PDFドキュメント内の指定されたCJKパターンに一致するテキストを抽出し、そのテキストをファイルに保存します。
ExtractTextByPatternMatch
このサンプルは、PDFドキュメント内の指定されたパターンに一致するテキストを抽出し、そのテキストをファイルに保存します。
ExtractTextByRegion
このサンプルは、PDFドキュメント内のページの特定の対象領域からテキストを抽出し、そのテキストをファイルに保存します。
ExtractTextFromAnnotations
このサンプルは、PDF ドキュメントの注釈からテキストを抽出し、そのテキストをファイルに保存します。
ExtractTextFromMultiRegions
このサンプルは、フォルダー内のPDFファイルを処理し、ページの特定の領域からテキストを抽出して、そのテキストをCSVファイルに保存します。
ExtractTextPreservingStyleAndPositionInfo
このサンプルは、PDFドキュメント内のテキストとそのテキストの詳細を抽出し、コンソールに出力し、テキストをJSON ファイルに保存します。
ListWords
このサンプルは、PDFドキュメント内の単語のテキストをリストします。
RegexExtractText
このサンプルでは、DocTextFinderを使用して、ユーザー指定の正規表現に一致するフレーズのインスタンスを検索する方法を示します。出力は、一致情報を含むJSONファイルです。
RegexTextSearch
このサンプルでは、DocTextFinderを使用して、ユーザーが指定した正規表現に一致するPDFドキュメント内の特定のフレーズの例を検索する方法を示します。サンプルはテキストを見つけると、一致する各フレーズを強調表示し、ファイルを出力ドキュメントとして保存します。
TextExtract
このサンプルは、PDF ファイルからテキストを抽出し、それをテキスト ファイル (TXT) にエクスポートします。
Constitution.PDFというPDF ファイルを開き、TextExtract-untagged-out.txt という出力ファイルを作成します。エクスポートファイルにはページ番号参照が含まれ、テキストは標準のTimes Romanエンコードを使用して生成されます。また、このプログラムは、タグ付きドキュメントを操作するための規定を含めるように作成されており、元の PDF ファイルがタグ付きかタグなしかを判別します。
まとめ
以上、Textサンプルのご紹介でした。PDFを扱うソリューションでは、PDFからテキストを抽出するニーズが結構あります。抽出したテキストを他の形式にエクスポートして保存することで、他形式での利用に活用したり、PDFの検索やタグ付けに使用したりすることもあります。テキストにすることでファイル形式の枠にとらわれず、データの有効活用ができますね。
なお、こちらのサンプルは、.NET環境のものとなっており、下記よりご入手いただいてご利用が可能です。お気軽にお試しいただければ幸いです。
https://github.com/datalogics/apdfl-csharp-dotnet-samples/tree/main/Text
イーストは、AcrobatなどAdobe製のPDFソリューション内で使われている、Adobe PDF Libraryの国内唯一の正規代理店です。PDFを活用するソリューションやツールの開発にAdobe純正の処理を組み込めます。Adobe PDF Libraryについては、イーストにお気軽にお問合せください。