メインコンテンツへスキップ
テスト画像を解析すると、請求日 field はその項目名の右側にあり、項目名と同じ高さに配置されていることがわかります。日付を検索するには、Date 要素を使用します。画像品質が低く日付が正しく認識されず、Date の検索で結果が得られない場合に備えて、型が Character String の追加要素も作成します。これらすべての要素に共通するプロパティを指定するために、複合要素 grDate を作成する必要があります。 grDate 要素を作成するには:
  1. InvoiceHeader 要素内に、型が Group の要素を作成し、grDate という名前を付けます。
  2. Relations タブをクリックします。
  3. 請求日 field の検出に使用するすべての要素は、kwInvoiceDate という項目名キーワードの右側で、かつその項目名と同じ高さにしか存在しないため、次の検索制約を設定します。
    • 要素 kwInvoiceDateRight of、Offset = 0。
    • 要素 kwInvoiceDateAbove、Offset = -10、Element boundary = Bottom。
    • 要素 kwInvoiceDateBelow、Offset = -10、Element boundary = Top。
InvoiceDate 要素を作成するには:
  1. InvoiceHeader.grDate 要素内に、型が Date の要素を作成し、InvoiceDate という名前を付けます。
  2. Date タブをクリックします。
  3. Date タブで、画像内に現れる可能性があるすべての日付フォーマットを指定します。ここでは、日付フォーマットは日、月、年の順で、language は English、日付にはそのほかの制約はないものとします。
  1. Advanced タブをクリックします。
  2. 請求日 field はこのドキュメントでは任意ですが、存在する場合は必ず項目名とともに現れ、常にその隣に配置されるため、Advanced pre-search relations field に次の追加の検索制約を設定します。kwInvoiceDate 要素が検出されている場合にのみ、画像上のオブジェクトを検索する。kwInvoiceDate 要素に最も近い画像オブジェクトを検索する。FlexiLayout language では次のようになります: If InvoiceHeader.kwInvoiceDate.IsNull Then DontFind; Nearest: InvoiceHeader.kwInvoiceDate; 注。 Nearest 制約は、プログラムのグラフィカル ユーザーインターフェースから指定することもできます。Relations タブをクリックし、Nearest を選択して、To: ドロップダウンリストで Element を選択し、Reference element として kwInvoiceDate を指定します。
  3. テスト画像に対して FlexiLayout のマッチングを実行し、請求日 field があるすべての画像で、プログラムがこの要素を正しく検出することを確認します。
テストすると、一部の画像では要素が検出されないことがわかります。事前認識の結果を解析すると、これは field 領域のノイズが原因であることがわかります。Date 要素の標準プロパティではこの問題を解決できないため、検索制約をより緩やかにした代替要素を作成する必要があります。
低品質の画像で日付を見つける方法の詳細については、Help ファイルの Tips and Tricks セクションを参照してください。
InvoiceDateAsString 要素を作成するには:
  1. InvoiceHeader.grDate 要素内に、型 Character String の要素を作成し、InvoiceDateAsString という名前を付けます。
  2. Character String タブをクリックします。
  3. Character count field に次のファジー区間を指定します: {-1, 8, 14, INF}。これは文字列長のおおよその範囲です。文字列の長さは 8 ~ 14 文字であると想定します。この範囲外の仮説にはペナルティが課されます。
  4. Max space length を 20 に設定します。これは、スペースの長さを 20 ドットまでにできることを意味します。
  5. その他のプロパティはデフォルト値のままにします。
  6. Advanced タブをクリックします。
  7. InvocieDate 要素が検出されていない場合にのみプログラムがこの要素を検索するようにするため、Advanced pre-search relations field に次の 追加の検索制約 を設定します: InvocieDate 要素が検出されていない場合にのみオブジェクトを検索します。FlexiLayout language では次のようになります: If Not InvoiceDate.IsNull Then DontFind;
  8. このドキュメントでは 請求日 field は任意ですが、存在する場合は常にその項目名とともに表示され、その項目名の隣に配置されるため、Advanced pre-search relations field に次の 追加の検索制約 を設定します: kwInvoiceDate 要素が検出されている場合にのみ、画像上のオブジェクトを検索します。kwInvoiceDate 要素に最も近い画像オブジェクトを検索します。FlexiLayout language では次のようになります: If InvoiceHeader.kwInvoiceDate.IsNull Then DontFind; Nearest: InvoiceHeader.kwInvoiceDate; 注。 Nearest 制約は、プログラムのグラフィカルユーザーインターフェースから指定することもできます。Relations タブをクリックし、Nearest を選択してから、To: ドロップダウンリストで Element を選択し、Reference element として kwInvoiceDate を指定します。
  9. テスト画像で FlexiLayout のマッチングを試し、請求日 field があるすべての画像でプログラムが要素を正常に検出し、InvoiceDate 要素に対してヌル仮説を生成することを確認します。
  10. InvoiceDate ブロックの位置を記述するには、Source element オプションを選択し、 をクリックして、ソース要素として InvoiceHeader.grDate 要素を選択します。
Group element の Region は、検出されたすべての subelements の Region を結合して計算されます。