Skip to main content
画像を確認すると、次のことがわかります。
  • 一部のドキュメントでは、請求日 field は field 名の右側にあり、別のドキュメントでは field 名の下にあります。検索領域を field 名の右側と下側の矩形に制限します。
  • 日付を検索するには Date 要素を使用します。さらに、field 名が検出されない場合は、field データを検索しません。
  • スキャン品質の問題や無効な日付フォーマットなどが原因で、日付は認識精度が低くなることがよくあります。Date 要素で日付が見つからなかった場合に備えて、追加の Character String 要素を指定します。
これらすべての要素に共通するプロパティを設定するため、Group 要素を作成します。

grDate グループ要素を作成する

1

Group 要素を作成する

InvoiceHeader 要素内に、Group 要素を作成し、名前を grDate にします。
2

検索領域を制限する

Advanced タブをクリックし、追加の検索制約を指定します。検索領域を、field 名の右側にある 1 つの矩形と、field 名の下側にオフセットを付けた 1 つの矩形からなる矩形の配列に制限します。FlexiLayout language では、次のように記述します。

InvoiceDate 要素を作成する

1

Date 要素を作成する

InvoiceHeader.grDate 要素に Date 要素を作成し、InvoiceDate と名前を付けます。
2

日付フォーマットを指定する

Date タブをクリックし、InvoiceDate 要素で使用できるすべての日付フォーマットを指定します。
ABBYY FlexiLayout Studio の InvoiceDate 要素のプロパティにある Date タブのスクリーンショット。請求日 field に指定された日付フォーマットの一覧が表示されています。
3

すでに検出された要素を除外する

一部の画像では、請求日 field の検索領域に、すでに検出された kwInvoiceNumber 要素と InvoiceNumber 要素が含まれています。FlexiLayout Studio がそれらの値を 請求日 field の仮説として扱わないよう、これらを検索領域から除外します。
  • Exclude regions of elements field の横にある Add… をクリックします。
  • 要素の一覧から kwInvoiceNumber を選択します。
  • OK をクリックします。Exclude regions of elements field に SearchElements.InvoiceHeader.kwInvoiceNumber という文字列が表示されます。
要素 SearchElements.InvoiceHeader.InvoiceNumber についても、同じ操作を繰り返します。
4

検索制約を追加する

Advanced タブをクリックします。請求日 field は任意です。ただし、文書に 請求日 field の日付がある場合、対応する field 名 (前述の kwInvoiceDate 要素で定義) は必ず存在します。Advanced pre-search relations で、kwInvoiceDate が検出された場合にのみ画像オブジェクトを検索する条件を追加します。FlexiLayout language では、次のように指定します。
5

FlexiLayout をマッチングする

InvoiceFooter 要素を一時的に除外してから、FlexiLayout をマッチングします。
低品質の画像で認識結果が Date 要素の標準パラメーターのいずれにも適合しない場合は、より緩やかな条件で 請求日 field を検索する代替要素を追加します。

InvoiceDateAsString 要素を作成する

1

Character String 要素を作成する

InvoiceHeader.grDate 要素内に、Character String 要素を作成し、InvoiceDateAsString という名前を付けます。
2

アルファベットを指定する

Character String タブをクリックし、アルファベットを指定します。,-./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz
3

非アルファベット文字の割合を設定する

非アルファベット文字の割合を 30% に設定します。
4

文字数を設定する

Character count フィールドで、文字列の長さとしてファジー区間 {-1, 8, 14, INF} を指定します。想定される値の範囲は 8 ~ 14 文字です。この区間外の仮説にはペナルティが適用されます。
5

最大スペース長を設定する

Max space length を 20 に設定します。これにより、テキスト文字列内のスペースの最大長が 20 ドットに制限されます。その他の要素のプロパティはデフォルト設定のままにします。
6

フォールバック制約を追加する

Advanced タブをクリックします。InvoiceDateAsString 要素は InvoiceDate 要素が検出されなかった場合にのみ検索する必要があるため、この条件を Advanced pre-search relations フィールドで指定します。FlexiLayout language では、次のように指定します。
7

位置制約を追加する

InvoiceDate の場合と同様に、追加の条件を指定します。kwInvoiceDate 要素が検出された場合にのみ画像オブジェクトを検索し、kwInvoiceDate に最も近いオブジェクトを検索します。FlexiLayout language では、次のように指定します。
8

ブロック領域を設定する

InvoiceDate ブロックの位置として、検出された InvoiceDate または InvoiceDateAsString 要素の長方形領域を指定し、垂直方向と水平方向に 5 ドット拡張します。Expression オプションを選択し、次の式を入力します。