Skip to main content
画像ごとに列の順序や構成が異なる場合があるため、テーブル内で考えられる列順序をすべて列挙する必要があります。 ある要素がテーブルで考えられるすべての列を表しており、画像を解析することで考えられる列順序をすべて特定できる場合は、その要素のプロパティで可能な列順序をすべて指定します。 考えられる列順序をすべて漏れなく列挙できない場合や、検出する必要のない別の列が途中に挟まる場合は、複数の列順序を記述するためのルールを作成できます。 テーブル要素の Properties ダイアログの Order タブで列順序を指定します。 Properties ダイアログを開くには、FlexiLayout ウィンドウで テーブル要素を右クリックし、ショートカットメニューの Properties… を選択します。
ABBYY FlexiLayout Studio のテーブル要素の Properties ダイアログにある Order タブのスクリーンショット。固定列順序とルールのオプションが表示されています。
  • 可能な列順序を単純に列挙するだけであれば、たとえば “Column1; Column2; Column3” と “Column3; Column2; Column1” のように、互いに矛盾する列順序を指定できます。画像に対して FlexiLayout をマッチングする際、プログラムはその画像に最も適した列順序を選択します。
  • 複数の列順序を記述するためにルールを使用する場合は、矛盾する順序を指定できません。画像に対して FlexiLayout をマッチングする際、プログラムはすべての条件を満たす列順序を探します。2 つのルールで矛盾する条件が指定されている場合 (たとえば、“Column1 << Column2 << Column3” と “Column3 << Column2 << Column1”)、プログラムは FlexiLayout をマッチングできません。

固定列順序の一覧

すべてのテスト画像で列の順序がまったく同じ場合、その順序は固定であるといいます。たとえば、テーブルに 日付数量価格 の 3 つの列があり、それらが常にこの順序で並んでいる場合です。 テスト画像によっては、複数の異なる列順序が見つかることがあります。たとえば、ある画像では 日付数量価格 の順で、別の画像では 日付価格数量 の順になっていることがあります。 このような順序は、いくつでも指定できます。 固定列順序を指定するには、Fixed column order オプションを選択します。既定では、テーブル要素を作成すると、テーブルブロックの作成時に指定した順序で全列を並べた 1 つの固定列順序がプログラムによって設定されます。この順序には、既定で Standard という名前が付けられます。 テスト画像上の列順序に合わせて、Standard の順序を変更できます。また、新しい順序を追加したり、一覧から順序を削除したりすることもできます。

固定列順序を編集する

1

固定列順序の編集ダイアログを開く

編集する列順序を選択し、Edit… をクリックします。
2

列順序の名前を変更する

Order name field に、列順序の新しい名前を入力します。この名前は、FlexiLayout で順序を識別するためにのみ使用され、現在の テーブル 要素の認識候補のプロパティに表示されます。この名前を指定すると、プログラムがどの列順序を選択したのかを識別しやすくなります。
3

列を並べ替える

List1 field には、すべてのテーブル列の一覧が表示されます。列を選択し、右へ移動ボタン をクリックして List2 リストに追加します。すべて右へ移動ボタン をクリックすると、すべての列がリストに追加されます。左へ移動ボタン をクリックすると List2 リストから列が削除され、すべて左へ移動ボタン をクリックすると List2 リストからすべての列が削除されます。上へ移動ボタン ボタンと 下へ移動ボタン ボタンを使うと、List2 リスト内で列を上下に移動できます。必要に応じてこれらのボタンを使って列の順序を変更し、OK をクリックします。

新しい列順序を作成する

1

[固定列順序の追加]ダイアログを開く

Add… をクリックします。
2

列順序に名前を付ける

Order name field に、新しい列順序の名前を入力します。
3

列を並べ替える

List1 field には、すべてのテーブル列の一覧が表示されます。列を選択し、右へ移動ボタン をクリックして List2 リストに追加します。すべて右へ移動ボタン をクリックすると、すべての列がリストに追加されます。左へ移動ボタン をクリックすると List2 リストから列が削除され、すべて左へ移動ボタン をクリックすると List2 リストからすべての列が削除されます。上へ移動ボタン ボタンと 下へ移動ボタン ボタンを使うと、List2 リスト内で列を上下に移動できます。必要に応じてこれらのボタンで列の順序を変更し、OK をクリックします。
固定列順序を削除するには、リストで対象の順序を選択し、Delete をクリックします。

ルールを使用して列の順序を指定する

テスト画像を解析しても1つ以上の固定列順序を特定できない場合は、考えられる順序を記述するルールを作成できます。 各ルールでは、たとえば次のような条件を設定します。「日付列は常に品目列より前にある」または「価格列は常に品目列より後にある」。ルールを使うと、列の検索範囲を絞り込み、考えられる組み合わせの数を減らすことができます。 ルールを使用して列の順序を指定するには、Rules for column orderオプションを選択します。

ルールを作成する

1

「Edit Column Order Rule」ダイアログを開く

Add… をクリックします。
2

列を配置して順序を設定する

List1 field には、すべてのテーブル列の一覧が表示されます。列を選択し、右へ移動ボタン をクリックして List2 リスト に追加します。次に、先ほど選択した列の後に必ず配置される列を選択します (ただし、直後である必要はありません) 。すべて右へ移動ボタン をクリックすると、すべての列が一覧に追加されます。左へ移動ボタン をクリックすると List2 リスト から列が削除され、すべて左へ移動ボタン をクリックすると List2 リスト からすべての列が削除されます。上へ移動ボタン ボタンと 下へ移動ボタン ボタンを使用すると、List2 リスト 内で列を上下に移動できます。必要に応じてこれらのボタンで列の順序を変更し、OK をクリックします。
作成したルールは Rules for column order field に表示されます。<< 記号は、一方の field がもう一方の field より常に前にあることを示します。

ルールを編集する

1

Edit Column Order Rule ダイアログを開く

Edit… をクリックします。
2

必要な順序を設定する

右へ移動ボタンすべて右へ移動ボタン左へ移動ボタン上へ移動ボタン下へ移動ボタン の各ボタンを使用して列を並べ替え、OK をクリックします。
ルールを削除するには、Delete をクリックします。