- 一部のドキュメントでは、請求日 field は field 名の右側にあり、別のドキュメントでは field 名の下にあります。そのため、検索領域を field 名の右側と下側の矩形に制限します。
- 日付を検索するには Date 要素を使用します。さらに、次の条件を指定します。field 名が検出されない場合は、field データを検索しません。
- 日付は認識精度が低くなることが少なくありません。これは、スキャン品質の問題や無効な日付フォーマットなどが原因である可能性があります。そのため、Date 要素で日付が見つからなかった場合に備えて、追加の Character String 要素を指定します。
- InvoiceHeader 要素内に、型が Group の要素を作成し、名前を grDate にします。
-
Advanced タブをクリックし、追加の検索制約を指定します。検索領域を、field 名の右側にある 1 つの矩形と、field 名の下側にオフセットを付けた 1 つの矩形からなる矩形の配列に制限します。FlexiLayout language では、この制約は次のように記述できます。
InvoiceHeader.grDate要素内に、型が Date の要素を作成し、名前を InvoiceDate にします。- Date タブをクリックします。
- InvoiceDate 要素で使用可能なすべての日付フォーマットを指定します。

- 一部の画像では、請求日 field の検索領域に、すでに検出されている kwInvoiceNumber 要素と InvoiceNumber 要素が含まれることがあります。プログラムがこれらの要素の値を 請求日 field の仮説として扱わないよう、これらの要素を検索領域から除外します。
- Exclude regions of elements field の横にある Add… ボタンをクリックします。
- 要素のリストから kwInvoiceNumber を選択します。
- OK をクリックします。すると、Exclude regions of elements field に文字列
SearchElements.InvoiceHeader.kwInvoiceNumberが表示されます。
SearchElements.InvoiceHeader.InvoiceNumber についても、これらの操作を繰り返します。
- Advanced タブをクリックします。
-
請求日 field は必須要素ではありません。ただし、ドキュメントに日付 (請求日 field) が含まれている場合、ドキュメント上には必ず対応する field 名 (前述の kwInvoiceDate 要素で記述) が存在します。したがって、Advanced pre-search relations で追加の検索条件を指定できます。kwInvoiceDate が検出されている場合にのみ画像オブジェクトを検索します。FlexiLayout language では、この条件は次のように記述できます。
- InvoiceFooter 要素を一時的に除外し、FlexiLayout を match します。
-
InvoiceHeader.grDate要素内に、型が Character String の要素を作成し、InvoiceDateAsString という名前を付けます。 - Character String タブをクリックします。
- アルファベットを指定します。 ,-./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz
- アルファベットに含まれない文字の割合を 30% に設定します。
-
Character count フィールドで、文字列の長さに対してファジー区間
{-1, 8, 14, INF}を指定します。想定される値は 8~14 文字の範囲に収まるものとします。この区間外の仮説にはペナルティが適用されます。 - Max space length を 20 に設定します。これにより、テキスト文字列内のスペースの最大長が 20 ドットに制限されます。
- その他の要素のプロパティは、デフォルト設定のままにします。
- Advanced タブをクリックします。
-
InvoiceDateAsString 要素は、画像上で InvoiceDate 要素が検出されなかった場合にのみ検索する必要があるため、Advanced pre-search relations フィールドに次の条件を指定します。InvoiceDate 要素が検出されなかった場合にのみ、画像オブジェクトを検索します。FlexiLayout language では、この条件は次のように記述できます。
-
InvoiceDate に対しても、前の手順と同様の追加条件を指定します。kwInvoiceDate 要素が検出された場合にのみ画像オブジェクトを検索し、kwInvoiceDate 要素に最も近い画像オブジェクトを検索します。FlexiLayout language では、この条件は次のように記述できます。
-
InvoiceDate ブロックの位置を、検出された InvoiceDate または InvoiceDateAsString 要素の rectangular region を上下左右に 5 ドットずつ拡張した領域として指定します。これを行うには、Expression オプションを選択し、次の式を入力します。
