柔軟で非常に柔軟なフォーム... ABBYY FlexiLayout Studio

テクニカルライターとしてABBYYで仕事に就いたばかりのとき、説明する必要があるシステムの規模についてはほとんど知りませんでした。 冗談ではありません-一般名ABBYY FlexiCaptureの下では、4つの異なる製品(ABBYY FlexiCapture、Scanning Station、ABBYY FlexiLayout Studio、ABBYY FormDesigner)が隠されていました。 そして、最初のステップで、システム全体とは一線を画すアプリケーションに出くわすようにする必要があります。 より正確にはそうではありません-すべてのコンポーネントは特別であり、それぞれ独自の方法で、それぞれが独自の美しさを持っています。 この記事で説明するABBYY FlexiLayout Studioは、ユーザーにとって最も複雑な製品であるため、際立っています。 原則として、ここでは「ユーザー」という言葉でさえ完全に適切ではありません。実際、ABBYY FlexiLayout Studioを使用する人はプログラマーに近いです。



ABBYY FlexiLayout Studioは、柔軟な説明を作成するように設計されています。 柔軟な説明とは何ですか?また、ハードな説明とどのように違いますか? ハードディスクリプションは標準形式です。 記入前のこのようなドキュメントのコピーはすべて同じで、「明るい」と言われています-重ねて配置すると、同じフィールドが同じ場所に配置されます。 これらの場所の座標を決定するだけで十分です-処理中にフィールド値が認識されます。 すべてが簡単で明確です。



しかし、状況は常にそれほど単純ではありません。 データを抽出するドキュメントの多くは、ハードフォームではありません。 たとえば、異なる銀行のATMチェックには、一般に同じ情報が含まれています。 しかし、それらはその場所だけでなく、サイズも異なります。 もちろん、そのようなドキュメント用のハードテンプレートを作成することはできません。 何が可能ですか?





また、ABBYY FlexiLayout Studio 10を使用すると、柔軟な説明を作成できます。 柔軟な説明を使用すると、情報を抽出するフィールドの座標ではなく、サポート要素および互いに対する相対的な位置、認識されるデータのタイプおよび可能な構造を使用して操作できます。 たとえば、ATMから2つのレシートをスキャンします。











明らかに、クリアランスは同じではありません。 一方、それらの要素のいくつかは一般的です。上は銀行の名前、下は取引の日付と時刻、下は引き出し金額と残高(ただし、異なる方法で呼ばれます)、および技術情報です。 特定のプログラムへのチェックからの情報の入力を自動化したいとします。 お金の引き出しの日時、資金の量と残高に興味があります。 簡単にするため、Raiffeisen BankとSberbankの2種類の小切手を処理するものとします。



まず、サポート要素を見つける必要があります。 私たちの場合、これは銀行の名前です:Raiffeisen BANKまたはOJSC Sberbank of Russia。 これを行うには、ヘッダー要素(ヘッダー、および静的テキストタイプのBankNameサブ要素)を作成し、この要素に銀行の名前を含める必要があることを示します。 この要素は必須である必要があります-チェックを識別し、見つからない場合、それ以上の処理は無意味です。











次に、ヘッダー(オプション)で、Date型のDate要素を作成して、トランザクションの日付を検索および決定し、銀行の名前の下にあることを示します。 私たちのケースは非常に単純です。日付形式はほぼ同じDD-MM-YY(YY)で、年の区切り文字と形式のみが異なります。 したがって、順序は常に日月年であり、年は2桁または4桁で構成でき、スラッシュまたはピリオドが区切り文字として機能することを示します。 同時に、日付の可能な値を制限します-2010年1月1日(古い小切手の処理が不要であると想定)から2100年12月31日(ATM小切手の処理が関連する可能性は低い):これは、日付のより確実な検索に必要です。



次に、文字列タイプのTime要素を作成して、操作時間を検索します。現時点では、ABBYY FlexiCapture 10はこの場合の特別な形式をサポートしていません。 どちらの場合も、時刻は日付の右側にあり、NN:NN:NNという形式の形式になっています。これは、説明するフィールドです。

引き出し金額と残高を検索するには、同じ方法を使用できます-行見出しのある静的テキスト要素を作成し、その左に合計がある通貨要素を探します。 ただし、署名と情報フィールドの組み合わせである既製のラベル付きフィールド要素を使用する方が簡単です。 このような2つのフィールドAmountとBalanceを作成し、最初の見出し「Amount」に指定し、2番目に「Balance」または「Available balance」を指定します。 データフィールドのタイプが通貨であることを示します。



この後、ブロックを追加するだけです-実際には情報が抽出されるセクション。 単純なケースでは、AmountおよびBalance要素のDate、TimeおよびFieldサブ要素と一致します。 すべてが正しく認識されていることを確認し、説明をABBYY FlexiCapture 10にエクスポートします。できれば、借方記入の日付を手動で入力する必要はありません。



これは、柔軟な説明を手動で作成するときのメインプログラムウィンドウの外観です。







右側には、ドキュメントのイメージ、その下の仮説ツリー(フィールドの検索方法をたどることができます)、左から上へ、それらに関する情報を含むページのリスト、そしてFlexiLayout構造、および下部の選択した要素のプロパティがあります。



もちろん、これは最も単純なケースです。 現実には、すべてが通常はるかに複雑であり、プログラムの可能性は非常に広いです。 ドキュメントをすばやくソートするための分類子を作成できます。 複数ページの説明を作成できます。 柔軟な説明を自動的に作成およびトレーニングできます。 柔軟な記述をプログラミングするために特別な言語を使用できます。 ABBYY FlexiLayout Studio 10のヘルプには何百ものページが含まれていますが、興味のある方は次の号でそれらについてお話ししますが、これは長すぎることが判明しました。



注:はい、ちなみに、写真の個人情報は、スクリーンショットの撮影またはスキャン後に手動で非表示になります。 ただし、ABBYY FlexiCapture 10(ABBYY FlexiLayout Studio 10ではありません)は、必要に応じてそのようなフィールドに自動的に入力できます。

誕生日おめでとう、ディミーチ!

パベル・ソコロフ

データ入力製品部門



All Articles