メインコンテンツへスキップ
このオブジェクトは、複数のページを含む処理対象のドキュメントを表します。FRDocument オブジェクトは、ドキュメントのページのコレクションのルートです。各ページには、開かれた画像と画像レイアウトが含まれています。 FRDocument オブジェクトは、ドキュメント処理に必要なすべてのメソッドを提供します。1 つのメソッド (Process メソッド) のみを使用してドキュメントを処理することも、分析、認識、合成、エクスポートの各ステップを実行して段階的に処理することも可能です。通常、これらのすべてのステップは、ドキュメント処理の一般的なシナリオで必須です。詳細は、対応するメソッドの説明を参照してください。FRDocument オブジェクトを使用した作業を終了したら、このオブジェクトで使用されたすべてのリソースを解放してください (Close メソッドを使用) 。 このオブジェクトは、DocumentContentInfo プロパティを介して、作者、キーワード、件名、タイトルなどのドキュメント属性にアクセスできます。 FRDocument オブジェクトは、いわゆる「connectable object」です。Windows の FRE での Visual Basic の場合、WithEvents で宣言できます。C++ (すべてのサポートされているオペレーティングシステム) の場合、これは IConnectionPointContainer インターフェースをサポートすることを意味します。処理中の通知イベントを受信するには、C++ ユーザーは IFRDocumentEvents インターフェースから派生したオブジェクトを作成し、次に:
  • Linux または macOS では、AdviseFREngineObject グローバル関数を呼び出して、オブジェクトを FRDocument オブジェクトにアドバイスします。
  • Windows では、標準の COM 手段で、オブジェクトと FRDocument オブジェクトで実装されたイベントソース間の接続を設定します。
Windows では:FRDocument オブジェクトは、Visual Basic で WithEvents で宣言することもできます。FRDocument オブジェクトのメソッドは、特別な送信インターフェースを介してページ処理の進行状況に関する情報を報告します。これらのインターフェースは、C++ 用に IFRDocumentEvents と、Visual Basic 用に dispinterface DIFRDocumentEvents です。Visual Basic ユーザーは、この開発プラットフォームがそれらを処理するための簡単な手段を提供するため、イベントインターフェースの実装の詳細を気にする必要はありません。

プロパティ

,読み取り専用

Engine オブジェクトを返します。

, 読み取り専用

IFRDocument オブジェクトに割り当てられたメモリのサイズを返します。このプロパティの値はバイト単位です。

,読み取り専用

文書のページコレクションを返します。

,読み取り専用

文書のテキストを特殊な「プレーンテキスト」形式で返します。

, 読み取り専用

認識された文書の主要言語を返します。このプロパティには、検出された言語のコレクション (DetectedLanguages プロパティ) の先頭の言語の内部名が格納されます。

このプロパティが有効な値を持つのは、自動言語検出を有効にして認識を実行した場合のみです (詳細はプロパティを参照) 。それ以外の場合は空文字列になります。

,読み取り専用

認識された文書で検出された認識言語のコレクションにアクセスできます。コレクション内の言語は出現頻度の高い順に並べられます。

このプロパティが有効な値を持つのは、自動言語検出を有効にして認識を実行した場合のみです (詳細はプロパティを参照) 。

言語の一覧が更新されるのは認識後のみです。つまり、文書のレイアウトを手動で編集しても、コレクションは変わりません。

, 読み取り専用

文書の論理構造が古くなっているかどうかを示します。このプロパティが TRUE の場合は、エクスポート前に文書合成を実行する必要があります。そうしないと、エクスポート時にエラーが発生します。

Visual Components を使用する場合、このプロパティは便利です。ユーザーが Visual Components の GUI を使って文書内のページ順序やページ数を変更すると、文書の論理構造は無効になります。このような文書を Visual Components で利用可能なコマンドでエクスポートする場合、Visual Components が文書合成を自動的に実行します。ただし、エクスポートに FineReader Engine API のメソッドを使用する場合は、エクスポート前に文書合成を実行する必要があります。

無効になる可能性があるのは文書構造だけでなく、ページ構造も同様です。したがって、エクスポート前に、文書内のすべてのページが有効なページ構造を持っていることも確認する必要があります (IFRPage::PageStructureOutOfDateプロパティを参照) 。

,read-only

Provides access to the collection of business cards detected in the document.

Contains information about the author, keywords, subject, and title of the document and stores the document information dictionary.

Returns the collection of attachments of the document. They are extracted from the input PDF document during opening, or you can add your own files to be attached to the output PDF file during export. To attach all the files of this collection to the output PDF file, set theproperty to TRUE.

,read-only

Returns the collection of the names of fonts which have been extracted out of the input PDF file resources. If the document has been created by opening a file in other format, or from a PDF file containing no fonts, an empty collection will be returned.

, read-only

Indicates whether at least one of the source files was a digitally signed PDF.

Specifies if theand theobjects for corresponding pages should be unloaded and saved to disk if there are no references to these objects.

For Linux, when this property value is set to PFP_KeepInMemory, the image documents and layouts for unused pages are not saved to disk.

このプロパティのデフォルト値はPFP_Autoです。

macOS の場合、このプロパティの値は無視されます。未使用ページの画像ドキュメントおよびLayoutは、常にディスクにアンロードされます。

Windows の場合:ドキュメントの個別ページのImageDocumentおよびLayoutオブジェクトをアンロードしてディスクに保存するには、対応するページに対してIFRPage::Flushメソッドを使用します。

このプロパティのデフォルト値はPFP_Autoです。

Specifies the path to the folder where the temporary image files in the ABBYY FineReader Engine internal format are stored.

By default, the value of this property is “%TEMP%\ABBYY FineReader Engine 12”.

メソッド

名称説明
AddImageDocumentImageDocument オブジェクトで表される開いている画像 1 つを、ドキュメントに追加します。
AddImageFile画像ファイルを開き、開いたファイルに対応するページをドキュメントに追加します。
AddImageFileFromAttachment添付ファイル内の画像ファイルを開き、開いたファイルに対応するページをDocumentに追加します。
AddImageFileFromMemoryユーザーがあらかじめグローバルメモリに読み込んだ画像ファイルを開き、そのファイルに対応するページをドキュメントに追加します。
AddImageFileFromStreamユーザーが実装した入力ストリームから画像ファイルを開き、そのファイルに対応するページをドキュメントに追加します。
AddImageFileWithPasswordパスワードで保護された画像ファイルを開き、そのファイルに対応するページを Document に追加します。
AddImageFileWithPasswordCallbackIImagePasswordCallback インターフェイスを使用して画像ファイルを開き、開いたファイルに対応するページをドキュメントに追加します。
AddPageドキュメントにページを追加します。
Analyzeドキュメント内のすべてのページのレイアウト解析を実行します。
AnalyzePages文書内の指定したページに対してレイアウト解析を実行します。
CheckTextLayer指定した文書ページのテキストレイヤーについて、有無または信頼性を確認します。
CloseFRDocument object が使用していたすべてのリソースを解放し、そのオブジェクトを初期状態 (IEngine::CreateFRDocument メソッドで作成された直後の状態) に戻します。
ConvertFromOldVersionABBYY FineReader Engineの以前のバージョンで保存されたFRDocumentオブジェクトの内容を、指定されたフォルダーから読み込みます。
Exportドキュメントを外部形式のファイルとして保存します。
ExportPages指定したページを外部形式のファイルとして保存します。
ExportToMemoryドキュメントを外部形式でメモリに保存します。
LoadFromFolderABBYY FineReader Engine 12 で保存された FRDocument オブジェクトの内容を、指定したフォルダーから読み込みます。
Preprocessドキュメント内のすべてのページに対して前処理を行います。ページの向きや反転、幾何学的な歪みを補正し、必要に応じてページ分割を行います。
PreprocessPagesドキュメント内の指定したページに対して前処理を実行します。ページの向き、反転、幾何学的な歪みを補正し、必要に応じてページ分割を実行します。
Processドキュメント内のすべてのページに対して、前処理、レイアウト解析、認識、ページの合成、および文書の合成を実行します。
ProcessPages文書内の指定されたページに対して、前処理、レイアウト解析、認識、ページ合成、および文書合成を実行します。
Recognize文書内のすべてのページに対して、認識とページ合成を実行します。
RecognizePagesDocument 内の指定したページに対して、認識とページ合成を実行します。
SaveToFolderFRDocument object の内容を指定したフォルダーに保存します。
SplitPages指定したドキュメントの各ページを複数のページに分割します。このメソッドは、ページが書籍の見開きページである場合や、1つのページに複数の名刺画像が含まれている場合に便利です。また、ページがどのように分割されたかに関する情報も取得できます。
Synthesize文書内のすべてのページに対して文書合成を実行します。
SynthesizePages文書内の指定したページに対して文書合成を実行します。
FRDocument オブジェクト図

出力パラメーター

このオブジェクトは、Engine オブジェクトの CreateFRDocument メソッドおよび CreateFRDocumentFromImage メソッドの出力パラメーターです。

入力パラメーター

このオブジェクトは、以下のメソッドの入力パラメーターとして渡されます: FRDocument_VC

サンプル

FREngine.IEngine engine;
// ドキュメントを作成
FREngine.IFRDocument document = Engine.CreateFRDocument();
try {
 // 画像ファイルをドキュメントに追加
 document.AddImageFile( "D:\\Demo.tif", null, null );
 // ドキュメントを認識
 document.Process( null );
 // 既定のパラメーターで結果を rtf に保存
 document.Export( "D:\\Demo.rtf", FREngine.FileExportFormatEnum.FEF_RTF, null );
}
catch( Exception error )
{
 ...
}
finally {
 // ドキュメントを閉じる
 document.Close();
}
FREngine::IEnginePtr Engine;
// ドキュメントを作成
FREngine::IFRDocumentPtr frDocument = Engine->CreateFRDocument();
try {
 // 画像ファイルをドキュメントに追加
 frDocument->AddImageFile( L"D:\\Demo.tif", 0, 0 );
 // ドキュメントを認識
 frDocument->Process( 0 );
 // 既定のパラメーターで結果を rtf に保存
 frDocument->Export( L"D:\\Demo.rtf", FREngine::FEF_RTF, 0 );
} catch( _com_error& e ) {
 ...
 // ドキュメントを閉じる
 frDocument->Close();
}
// ドキュメントを閉じる
frDocument->Close();
このオブジェクトは、Linux/Windows 向けの BatchProcessing コードサンプルを除き、ほぼすべてのコードサンプルで使用されています。

関連項目

FRPage IFRDocumentEvents ABBYY FineReader Engineでの並列処理 Connectable Objects の操作 Properties の操作