1. ホーム
  2. 製品一覧
  3. PDFlib TET
Product

PDFlib TET について

PDFlib Text Extraction Toolkit (TET) は PDF ファイルから文字列や画像などを抽出する製品で、プログラムから呼び出して使用するライブラリと、単体で動作するコマンドラインツールが提供されています。TET により、PDF 内の文字列を Unicode の文字列にしたり、グリフやフォントの詳細な情報、PDF ファイルの文字列から対応する Unicode の値や、ページ内の位置などを取得できます。また、TETML という XMLベースのフォーマットに文字列やメタデータを出力することもできます。

TET は文字列のローレベル情報の取得などに加え、単語の取得のための優れた処理アルゴリズムを備えています。また、冗長な文字列(影や不要な太字など)を削除することも可能です。TET に内蔵された pCOS 機能を利用することにより、PDF ファイルからメタデータやハイパーテキストなど任意のオブジェクトを取得することもできます。

TET により、可能となること

  • PDF から文字や画像を抜き出す(例えば、データベースへの文字列の格納等)
  • PDF を処理できる検索エンジンの実装
  • PDF 内の文字を XML に変換
  • PDF の内容に応じた PDF の処理

対応している PDF の種類

PDFlib TET は関連する全ての PDF に対応しています。

  • Acrobat DC までの全バージョンの PDF(RC4およびAESにも対応)
  • 全てのフォントおよびエンコード: 基本14フォント、TrueType, PostScript, OpenType, CID フォント
  • 40ビットおよび128ビットで暗号化されたPDF(処理を行うためには、適切な権限・パスワードが必要です)

Unicode

PDF 内の文字列のエンコーディングは通常 Unicode ではありませんが、PDFlib TET は PDF ファイルの文字列を Unicode に変換します。

  • TET は全ての文字列を Unicode に変換します。文字列は C 言語では UTF-8 もしくは UTF-16 で、その他の言語ではその言語で標準的な Unicode のエンコードとして返します。
  • リガチャ(合字)や、他の複数文字によるグリフは、Unicode のそれぞれの文字に分割されます。
  • (Corporate Use Subarea(CUS)文字等の)機種依存文字は、(可能であれば)Unicode の標準的な領域の文字にマップされます。
  • 適切な Unicode マッピングの無いグリフを認識すると、後で設定・置換可能な文字にマップされます。

CJK(中国語・日本語・韓国語)の完全サポート

TET は中国語・日本語・韓国語の文字列の抽出にも対応しています。あらかじめ定義された全ての CJK CMap(エンコーディング)に対応しており、縦書き・横書きをサポートしています。

CJK フォントおよび Unicode を扱う場合には PDFlib 7 各製品と同様に、下記のように TET に同梱されている CMap ディレクトリへのパスを指定する必要があります。CJK 環境での詳細に関してはマニュアルを参照してください。

tet = new TET();
tet.set_option("SearchPath=/xxxx/xxxx/path/resource/cmap");

コンテンツの処理や単語の認識

TET はグリフのローレベル情報を取得できるだけではなく、コンテンツ処理のための優れたアルゴリズムを採用しています。

  • 単語の境界の検出を行い、文字のかわりに単語を取得可能
  • (改行などにより)ハイフンの入った単語を再結合
  • 影や不要な太字など、文字列の余分なインスタンスの削除
  • 段落を読み順通りに再結合
  • ページ中に散らばった文字列の再整理
  • 文字列の整列

ページレイアウトやテーブルの検出

ページの内容を抽出する場合、文字列のカラムも解析します。またテーブルおよびそのセル、行数なども検出します。

ジオメトリ

TET は文字列のページ中の位置、グリフの幅、文字列の傾き等、正確なメトリックを取得できます。ページ中の特定の領域のみの抽出、もしくは除外することが可能なため、ヘッダやフッタ、マージンを無視することなどができます。

画像抽出

PDF内の画像を TIFF, JPEG, JPEG2000形式で抽出することができます。また位置やサイズ、角度など、詳細な座標情報もあわせて出力されます。断片化された画像は再利用しやすいように結合します。抽出する画像はそのまま抽出するため、劣化やカラースペースが変わってしまう、ということは起こりません。

内蔵の pCOS 機能による PDF オブジェクトへの容易なアクセス

PDF の任意のオブジェクトを取得するために内蔵の pCOS 機能を利用できます。pCOS により、PDF ファイルからメタデータ、ハイパーテキスト、もしくはその他の情報を、簡単なクエリーインターフェースにより取得できます。ローレベルなプログラミングは不要です。

プログラミングおよびパフォーマンス

TET はポータビリティ、パフォーマンス、堅牢性を念頭に置いて開発されており、スレッドセーフです。最良のパフォーマンスと最小限のオーバーヘッドを実現するため、コアライブラリは非常に最適された C 言語のコードです。COM, C, C++, Java, .NET 用のバインディングが用意されています。

TET コマンドラインツールと TET ライブラリ

TET は各種開発環境用のプログラミングライブラリとして提供されています。また、バッチ処理用として、コマンドラインツールも用意されています。両者とも同一の機能を提供していますので、用途により使い分けることができます。

  • プログラミングライブラリ版は、作成するアプリケーションに TET を統合するときに使用できます。TET のパッケージにはサポートしている全言語用のサンプルが含まれます。
  • コマンドライン版は、PDF ファイルのバッチ処理に適しています。コマンドライン版を使う場合にはプログラミングは不要です。複雑な処理を行う場合のために、いくつかのコマンドラインオプションがあります。また、PDF の内容を Unicode の XML ドキュメントに変換できます。

TET コネクタ

TETと他のソフトウェアを連携させるために使用可能な、下記の TET コネクタが同梱されています。

  • TET プラグイン は PDF ファイルから文字列を抜き出すための、無償の Acrobat 用プラグインです。このプラグインは単体で動作するものですので、使用の際に TET は不要です。
  • Lucene 用
  • Solr 用
  • Oracle Text 用
  • MediaWiki 用

PDF 文書解析のための pCOS インターフェース

TET にはPDF 文書中のメタデータやページ内のリンクといった属性情報を取得するための pCOS インターフェースが内蔵されています。

詳しくは、pCOS インターフェースをご参照ください。

TET の試用

TET に同梱されているコマンドラインツールおよびライブラリはライセンスキーを設定しない状態でも全ての機能を利用することができますが、10ページ、1MBまでのPDFファイルのみ扱うことができます。ライセンスキーを設定していない状態の TET は評価のためのみにご使用いただけます。ライセンスキーを設定することでこれらの制限は無くなり、正規版としてご使用いただくことが可能となります。

パッケージのダウンロード

PDFlib TET ダウンロード
お使いのOSに対応するアーカイブファイルを入手し、早速ご確認ください。
PDFlib TET マニュアル
日本語版・英語版のマニュアルがございます。