Skip to main content
FlexiLayout Studio は、候補オブジェクトのヒストグラムを作成し、それに基づいて White Gap 仮説を生成します。 既定では、FlexiLayout Studio は Any Text オブジェクト間の White Gap を探します。ほかの種類のオブジェクト間 (たとえば Separators 間) の White Gap を探すには、White Gap 要素の Properties ダイアログの Advanced タブにある Advanced pre-search relations field に制約を記述します。 たとえば、あらゆる種類のオブジェクトが存在しうる領域で White Gap を見つけるには、次の式を記述します。

ヒストグラムの作成方法

FlexiLayout Studio は、検索領域内で検出された特定の型のすべてのオブジェクトを、水平方向または垂直方向の軸に投影します。この投影はオブジェクトの幅または高さの合計であり、指定した型の各オブジェクトの線形サイズが投影値に加算されます。 水平方向のギャップを探す場合、FlexiLayout Studio は垂直軸上に投影を作成します。垂直方向のギャップを探す場合は、水平軸上に投影を作成します。 たとえば、テキストオブジェクトの中から垂直方向の White Gap を見つけるには、FlexiLayout Studio は、水平軸上の特定の点より上にあり、かつ要素の検索領域と交差する検索領域内のすべてのテキストオブジェクトの高さを合計します。 その後、FlexiLayout Studio はヒストグラムの高さが特定の値より小さい領域を探します。これらの領域は、オブジェクト数が比較的少なく、その投影が一定の事前定義値より小さい領域に対応します。 実際の画像には、スキャン時に生じる斑点やその他のノイズが含まれることが多いため、White Gap 内には一定数のオブジェクトを許容する必要があります。列や段落の間のギャップを探す際には、このノイズを無視する必要があり、また全体的な分布に大きな影響を与えることもありません。 検索領域内にテキストオブジェクト H1, H2,…, H9 があるとします。次の図では、これらのオブジェクトは黒で強調表示されています。検索領域には、ほかの型のオブジェクト (赤で強調表示) も含まれています。
検索領域の図。テキストオブジェクト H1 から H9 は黒で強調表示され、その他のオブジェクト型は赤で強調表示されています
垂直方向の White Gap を見つけるために、FlexiLayout Studio は水平軸上のテキストオブジェクトの投影を合計します。結果として得られるヒストグラムを次の図に示します。ヒストグラムでは、テキスト以外のオブジェクトは無視されます。
水平軸上のテキストオブジェクトの投影を合計して形成されたヒストグラムの図。テキスト以外のオブジェクトは無視されています
次に、FlexiLayout Studio はヒストグラムの最大値 (図では Max と表示) を求めます。次に、この最大レベルの値に Threshold coefficient (%) (K=0.2) で設定された値を掛けます。結果が White Gap の最大許容レベルになります (図では White Gap threshold と表示) 。結果として得られた White Gap threshold > 0 の場合、White Gap の領域内にほかのオブジェクトが存在していてもかまいません。 White Gap threshold が計算されると、Lower threshold limitUpper threshold limit に設定された値と比較されます。White Gap threshold < Lower threshold limit の場合、White Gap threshold には Lower threshold limit の値が割り当てられ、この値を使用して White Gap を探します。White Gap threshold > Upper threshold limit の場合、White Gap threshold には Upper threshold limit の値が割り当てられます。 次に、ヒストグラム上の高さを White Gap threshold と比較し、ヒストグラムのレベルが White Gap threshold より小さい領域を探します。 Min width/height プロパティは、White Gap の絶対的な最小幅を設定します。値が W2 の場合、残りの 2 つの仮説は破棄されます。 White Gap 仮説には、次のプロパティがあります。