ブックタイトルTET5
- ページ
- 90/228
このページは TET5 の電子ブックに掲載されている90ページの概要です。
秒後に電子ブックの対象ページへ移動します。
「ブックを開く」ボタンをクリックすると今すぐブックを開きます。
このページは TET5 の電子ブックに掲載されている90ページの概要です。
秒後に電子ブックの対象ページへ移動します。
「ブックを開く」ボタンをクリックすると今すぐブックを開きます。
TET5
6.6内容分析PDF文書は、テキストの個々のキャラクタのページ上における位置のみならず、そのセマンティックス(Unicodeマッピング)をも提供します。しかし多くの場合、単語・行・コラム・その他高次のテキストユニットに関する情報を伝えてはくれません。ページ上のテキストを構成するそれぞれの断片には、個々のキャラクタや音節や行、ないしそれらの任意の混合が含まれている可能性がありますが、明示的に単語や行やコラムの始まりや終わりを示す印はそこには一切ついていないのです。さらに悪いことには、ページ上のテキスト断片の順序は、論理的な(読む)順序とは違っている可能性があります。テキストの各部分をページ上に配置する際には規則など何もないのです。たとえば2段組みのページの場合でも、その内容の生成順はまず左コラムの1行目、次は右コラムの1行目、左コラムの2行目、右コラムの2行目、…となっているかもしれません。が、論理的な順序ならば、まず左コラム内のテキストをすべて処理した後に右コラムのテキストを処理しなければならないわけです。このような文書からテキストを抽出する場合には、ただPDFページ上の命令群を再生していただけでは、一般には望ましからぬ結果をもたらします。テキストの論理構造が失われているからです。TETの内容解析エンジンは、テキスト断片の内容・位置・関係を解析して、以下の目標を達成しようとします:>キャラクタ群から単語を再構成し、単語間に区切りキャラクタを(望まれていれば)挿入。>冗長テキストを除去(たとえば影付きに見せるためだけのダブり等)。>複数行にまたがってハイフネーションされている単語の各部を再結合。>テキストのコラム(区域)を認識。>区域内のテキスト断片をソート。ページ内の区域もソート。これらの動作について以下詳しく説明します。こうした内容処理を制御するオプションについても解説します。テキストの粒度open_page( )でgranularityオプションを用いると、get_text( )を1回呼び出すごとに返されるテキストの量を指定することができます。> granularity=glyphと設定すると、各断片はそれぞれ1つのグリフをマップした結果を持ちます。これは複数のキャラクタになることもあります(合字の場合等)。このモードでは内容分析は無効にされ、TETは、ページ上の元通りのテキスト断片をその元通りの順序のまま返します。これは最も速いモードではありますが、これが有用なのは、TETクライアント側で精巧な後処理を行おうとするときのみです(あるいはテキストの論理構造には関心がなくて位置にのみ興味があるとき)。なぜならこのモードではテキストがページ全体に散らばってしまっている可能性があるからです。> granularity=wordと設定すると、単語検出機能アルゴリズムがキャラクタ群をまとめて論理的な単語を再構成します。各断片はそれぞれ1つの単語を持ちます。孤立した句読点(カンマ・コロン・クエスチョンマーク・クオート等)はデフォルトでは独立した断片として返され、連続する句読点キャラクタは一個の単語としてグループ化されます(ピリオドキャラクタを連続させて点線のように見せかけている場合等)。ただし、句読点処理は変更することも可能です(91ページの「欧文テキストの単語境界検出」を参照)。> granularity=lineと設定すると、単語検出機能によって認識された単語群をまとめて行を再構成します。ハイフン除去が有効のとき(デフォルト)は、行末でハイフンで分割された単語は再結合され、そのハイフン除去された完全な単語はその行に繰り込まれます。90 6章:テキスト抽出