> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# 事前定義型

> FlexiLayout language の事前定義型のリファレンスです。Int、String、Distance から Rect、Region、FuzzyRect、table hypothesis 型までを扱います。

FlexiLayout language では、次の事前定義型が提供されます。各型について、サポートされる演算子、メソッド、コンストラクターを表に示します。

<div id="void">
  ## Void
</div>

Void 型は、戻り値のない関数を宣言するために使用されます。

<div id="logic">
  ## Logic
</div>

ブール型。この型の変数は `true` と `false` の値を取ります。条件式はすべて Logic 型の値を返します。

| Operator | Description        |
| :------- | :----------------- |
| `Not`    | 論理否定 (NOT) 、単項演算子。 |
| `And`    | 論理積 (AND) 、二項演算子。  |
| `Or`     | 論理和 (OR) 、二項演算子。   |

<div id="string">
  ## String
</div>

String 型は、可変長の Unicode 文字列 (文字のシーケンス) を表します。

| メソッド                                                                                                                                                                                                                                                                                                                                       | 説明                                                                                                                                          |
| :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------ |
| `Int Length()`                                                                                                                                                                                                                                                                                                                             | 文字列に含まれる文字数を返します。読み取り専用です。                                                                                                                  |
| `Int Find(String subStr, Int startPos = 0)`                                                                                                                                                                                                                                                                                                | 文字列内の部分文字列 subStr の先頭位置を返します。検索は startPos の位置から開始されます。startPos 引数を省略することもでき、その場合はデフォルト値の 0 が使用されます。文字列に startPos 部分文字列が含まれていない場合は -1 を返します。 |
| `Int Compare( String str )`                                                                                                                                                                                                                                                                                                                | 指定した文字列を、引数で設定された文字列と比較します。両者が等しい場合は 0 を返します。指定した文字列がアルファベット順で str より前にある場合は -1 を、後にある場合は 1 を返します。                                          |
| `Int CompareNoCase( String str )`                                                                                                                                                                                                                                                                                                          | 大文字と小文字を区別せずに、指定した文字列を引数で設定された文字列と比較します。両者が等しい場合は 0 を返します。指定した文字列がアルファベット順で str より前にある場合は -1 を、後にある場合は 1 を返します。                             |
| `String Mid ( Int start, Int count )`                                                                                                                                                                                                                                                                                                      | 文字番号 start から始まる、長さ 'count' 文字分の部分文字列を返します。                                                                                                 |
| `String Mid ( String subStr, Int startPos = 0 )`                                                                                                                                                                                                                                                                                           | 文字列内の部分文字列 subStr の先頭位置を返します。startPos 引数を省略することもでき、その場合はデフォルト値の 0 が使用されます。文字列に startPos 部分文字列が含まれていない場合は -1 を返します。                          |
| `String SubstParam( String param0 ); String SubstParam( String param0, String param1 ); String SubstParam( String param0, String param1, String param2 ); String SubstParam( String param0, String param1, String param2, String param3 ); String SubstParam( String param0, String param1, String param2, String param3, String param4 )` | 文字列のテキストを返します。その際、%n (n は非負の整数) というかたちで現れるすべての箇所を、対応するパラメータに置き換えます。文字列内の %n の出現回数は、渡すパラメータの数と一致している必要があります。元の文字列のテキストは変更されません。              |
| `String SubstParam( StringArray params )`                                                                                                                                                                                                                                                                                                  | 上記と同じですが、パラメータは文字列の配列として渡します。                                                                                                               |

| 演算子  | 説明                                                                                                        |
| :--- | :-------------------------------------------------------------------------------------------------------- |
| `==` | 2 つの文字列が等しいかどうかを判定します。二項演算子です。Logic 型の結果を返します。文字列が等しい場合は `true`、それ以外の場合は `false` を返します。大文字と小文字を区別します。     |
| `!=` | 2 つの文字列が等しくないかどうかを判定します。二項演算子です。Logic 型の結果を返します。文字列が等しくない場合は `true`、それ以外の場合は `false` を返します。大文字と小文字を区別します。 |
| `+`  | 2 つの文字列を連結します。String 型の値を返します。                                                                            |

<div id="int">
  ## Int
</div>

整数型。32 桁の整数に対応します。

| メソッド             | 説明           |
| :--------------- | :----------- |
| `Int abs( Int )` | 整数の絶対値を返します。 |

| 演算子                    | 説明                                                           |
| :--------------------- | :----------------------------------------------------------- |
| `-`                    | 符号を反転します。単項演算子です。                                            |
| `+`                    | 整数を加算します。二項演算子です。                                            |
| `-`                    | 整数から整数を減算します。二項演算子です。                                        |
| `*`                    | 整数を乗算します。二項演算子です。                                            |
| `/`                    | 整数を除算します。二項演算子です。                                            |
| `<, <=, >, >=, ==, !=` | 比較演算子: より小さい、以下、より大きい、以上、と等しい、と等しくない。二項演算子です。Logic 型の値を返します。 |

<div id="distance">
  ## Distance
</div>

距離を表す整数型 (ドット単位) です。

| メソッド                       | 説明           |
| :------------------------- | :----------- |
| `Distance abs( Distance )` | 距離の絶対値を返します。 |

| 演算子                    | 説明                                                                                    |
| :--------------------- | :------------------------------------------------------------------------------------ |
| `-`                    | 符号を反転します。単項演算子です。                                                                     |
| `+`                    | Distance 型の値を加算します。二項演算子です。                                                           |
| `-`                    | Distance 型の値を減算します。二項演算子です。                                                           |
| `*`                    | Distance 型の値に Int 型の値を乗算します。二項演算子です。Distance 型の値を返します。                                |
| `*`                    | Distance 型の値同士を乗算します。二項演算子です。Area 型の値を返します。                                           |
| `/`                    | Distance 型の値を Int 型の値で除算します。二項演算子です。Distance 型の値を返します。                                |
| `<, <=, >, >=, ==, !=` | 比較を行う二項演算子です。Distance 型の 2 つの値を比較します (より小さい、以下、より大きい、以上、と等しい、と等しくない) 。Logic 型の値を返します。 |

<div id="xcoordinate">
  ## XCoordinate
</div>

X座標を表すために使用される整数型です。

| Operator               | Description                                                                         |
| :--------------------- | :---------------------------------------------------------------------------------- |
| `+`                    | XCoordinate 型の値に Distance 型の値を加算します。二項演算子です。XCoordinate 型の値を返します。                   |
| `-`                    | XCoordinate 型の値から Distance 型の値を減算します。二項演算子です。XCoordinate 型の値を返します。                  |
| `-`                    | XCoordinate 型の値から XCoordinate 型の値を減算します。二項演算子です。Distance 型の値を返します。                  |
| `<, <=, >, >=, ==, !=` | XCoordinate 型の 2 つの値を比較します (より小さい、以下、より大きい、以上、と等しい、と等しくない) 。二項演算子です。Logic 型の値を返します。 |

<div id="ycoordinate">
  ## YCoordinate
</div>

Y 座標を表すために使用される整数型です。

| Operator               | Description                                                                             |
| :--------------------- | :-------------------------------------------------------------------------------------- |
| `+`                    | Distance 型の値に YCoordinate 型の値を加算します。二項演算子です。YCoordinate 型の値を返します。                       |
| `-`                    | YCoordinate 型の値から Distance 型の値を減算します。二項演算子です。YCoordinate 型の値を返します。                      |
| `-`                    | YCoordinate 型の値から YCoordinate 型の値を減算します。二項演算子です。Distance 型の値を返します。                      |
| `<, <=, >, >=, ==, !=` | YCoordinate 型の 2 つの値を比較する演算子です (より小さい、以下、より大きい、以上、と等しい、と等しくない) 。二項演算子です。Logic 型の値を返します。 |

<div id="real">
  ## Real
</div>

実数。

| Operator               | Description                                                                   |
| :--------------------- | :---------------------------------------------------------------------------- |
| `-`                    | 符号を反転します。単項演算子です。                                                             |
| `+`                    | 2 つの実数を加算します。二項演算子です。                                                         |
| `-`                    | 実数から別の実数を減算します。二項演算子です。                                                       |
| `*`                    | 2 つの実数を乗算します。二項演算子です。                                                         |
| `/`                    | 実数で除算します。二項演算子です。                                                             |
| `<, <=, >, >=, ==, !=` | 2 つの実数を比較します。それぞれ、より小さい、以下、より大きい、以上、と等しい、と等しくない、を表します。二項演算子です。Logic 型の値を返します。 |

<div id="quality">
  ## Quality
</div>

0 から 1 までの Real 型の数値です。element hypothesis の品質を制御するメソッドの戻り値を表します。

<div id="area">
  ## Area
</div>

画像領域の面積を表すために使用される整数型 (単位は dot\*dot) 。

| 演算子                    | 説明                                                                                    |
| :--------------------- | :------------------------------------------------------------------------------------ |
| `-`                    | 符号を反転します。単項演算子です。                                                                     |
| `+`                    | Area 型の 2 つの値を加算します。二項演算子です。                                                          |
| `-`                    | Area 型の値から別の Area 型の値を減算します。二項演算子です。                                                  |
| `*`                    | Area 型の値に Int 型の数値を乗算します。二項演算子です。Area 型の値を返します。                                       |
| `*`                    | Area 型の値に Real 型の数値を乗算します。二項演算子です。Area 型の値を返します。                                      |
| `/`                    | 数値を Int 型の整数で除算する二項除算演算子です。Area 型の値を返します。                                             |
| `/`                    | Area 型の数値を Area 型の数値で除算する二項除算演算子です。Real 型の値を返します。                                     |
| `<, <=, >, >=, ==, !=` | Area 型の 2 つの値を比較します。それぞれ、より小さい、以下、より大きい、以上、と等しい、と等しくない、を意味します。二項演算子です。Logic 型の値を返します。 |

<div id="imageobjecttype">
  ## ImageObjectType
</div>

分類済み画像オブジェクトを表す型です。

| Operator | Description                     |
| :------- | :------------------------------ |
| `+`      | ImageObjectType 型の 2 つの値を結合します。 |

<div id="dateformats">
  ## DateFormats
</div>

日付の形式を表すために使用される整数型です。

| Operator | Description                 |
| :------- | :-------------------------- |
| `+`      | DateFormats 型の 2 つの値を結合します。 |

<div id="dayformatvariants">
  ## DayFormatVariants
</div>

日付内の日の形式を表すために使用される整数型です。

| Operator | Description                       |
| :------- | :-------------------------------- |
| `+`      | DayFormatVariants 型の 2 つの値を結合します。 |

<div id="monthformatvariants">
  ## MonthFormatVariants
</div>

日付の月の形式を表す整数型です。

| Operator | Description                         |
| :------- | :---------------------------------- |
| `+`      | MonthFormatVariants 型の 2 つの値を結合します。 |

<div id="yearformatvariants">
  ## YearFormatVariants
</div>

日付における年度の書式を表すために使用される整数型です。

| Operator | Description                        |
| :------- | :--------------------------------- |
| `+`      | YearFormatVariants 型の 2 つの値を結合します。 |

<div id="xinterval">
  ## XInterval
</div>

画像上の X 座標の範囲を表す型です。

| Operator | Description                                                          |
| :------- | :------------------------------------------------------------------- |
| `+`      | Distance 型の値に XInterval 型の値を加算します。二項演算子です。Xinterval 型の値を返します。        |
| `+`      | DistInterval 型の値に XInterval 型の値を加算します。二項演算子です。Xinterval 型の値を返します。    |
| `-`      | XInterval 型の値から Distance 型の値を減算します。二項演算子です。Xinterval 型の値を返します。       |
| `-`      | XInterval 型の値から DistInterval 型の値を減算します。二項演算子です。Xinterval 型の値を返します。   |
| `-`      | XInterval 型の値から XInterval 型の値を減算します。二項演算子です。XInterval 型の値を返します。      |
| `-`      | XInterval 型の値から XCoordinate 型の値を減算します。二項演算子です。DistInterval 型の値を返します。 |
| `-`      | XCoordinate 型の値から XInterval 型の値を減算します。二項演算子です。DistInterval 型の値を返します。 |

| Method                | Description                       |
| :-------------------- | :-------------------------------- |
| `XCoordinate Start()` | 区間の開始位置の X 座標を返します。読み取り専用プロパティです。 |
| `XCoordinate End()`   | 区間の終了位置の X 座標を返します。読み取り専用プロパティです。 |

<div id="yinterval">
  ## YInterval
</div>

画像上のY座標の範囲を表す型です。

| Operator | Description                                                        |
| :------- | :----------------------------------------------------------------- |
| `+`      | YInterval 型の値を Distance 型の値に加算します。二項演算子です。Yinterval 型の値を返します。      |
| `+`      | YInterval 型の値を DistInterval 型の値に加算します。二項演算子です。Yinterval 型の値を返します。  |
| `-`      | YInterval 型の値から Distance 型の値を減算します。二項演算子です。Yinterval 型の値を返します。     |
| `-`      | YInterval 型の値から DistInterval 型の値を減算します。二項演算子です。Yinterval 型の値を返します。 |
| `-`      | YInterval 型の値から YInterval 型の値を減算します。二項演算子です。DistInterval 型の値を返します。 |

| Method                | Description                     |
| :-------------------- | :------------------------------ |
| `YCoordinate Start()` | 区間の開始位置のY座標を返します。読み取り専用プロパティです。 |
| `YCoordinate End()`   | 区間の終了位置のY座標を返します。読み取り専用プロパティです。 |

<div id="distinterval">
  ## DistInterval
</div>

許容される距離の範囲を表す型です。

| Operator | Description                                                     |
| :------- | :-------------------------------------------------------------- |
| `*`      | DistInterval 型の値に Int 型の数値を乗算します。二項演算子です。DistInterval 型の値を返します。 |
| `/`      | Int 型の数値で除算します。二項演算子です。                                         |

| Method             | Description              |
| :----------------- | :----------------------- |
| `Distance Start()` | 最小距離を返します。読み取り専用プロパティです。 |
| `Distance End()`   | 最大距離を返します。読み取り専用プロパティです。 |

<div id="rect">
  ## Rect
</div>

画像上の矩形です。

| Constructor                                                                             | Description                                                                                        |
| :-------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------- |
| `Rect Rect( XCoordinate left, YCoordinate top, XCoordinate right, YCoordinate bottom )` | 画像上の座標から Rect 型の値を生成します。矩形の境界はパラメーターとして渡します。left – 左側の境界、top – 上側の境界、right – 右側の境界、bottom – 下側の境界。 |

| Operator | Description                             |
| :------- | :-------------------------------------- |
| `Or`     | 2 つの矩形を結合します。結果は、両方の矩形を含む最小の矩形です。       |
| `And`    | 2 つの矩形の共通部分を求めます。結果は、両方の矩形に含まれる最大の矩形です。 |

| Method                                               | Description                                                                                           |
| :--------------------------------------------------- | :---------------------------------------------------------------------------------------------------- |
| `XCoordinate Left()`                                 | 矩形の左側の境界を返します。読み取り専用のプロパティです。                                                                         |
| `YCoordinate top()`                                  | 矩形の上側の境界を返します。読み取り専用のプロパティです。                                                                         |
| `XCoordinate Right()`                                | 矩形の右側の境界を返します。読み取り専用のプロパティです。                                                                         |
| `YCoordinate Bottom()`                               | 矩形の下側の境界を返します。読み取り専用のプロパティです。                                                                         |
| `Distance Width()`                                   | 矩形の幅を返します。読み取り専用のプロパティです。                                                                             |
| `Distance Height()`                                  | 矩形の高さを返します。読み取り専用のプロパティです。                                                                            |
| `Area Area()`                                        | 矩形の面積を返します。読み取り専用のプロパティです。                                                                            |
| `Void Left( XCoordinate x )`                         | 矩形の左側の境界を設定します。                                                                                       |
| `Void top( YCoordinate y )`                          | 矩形の上側の境界を設定します。                                                                                       |
| `Void Right( XCoordinate x )`                        | 矩形の右側の境界を設定します。                                                                                       |
| `Void Bottom( YCoordinate y )`                       | 矩形の下側の境界を設定します。                                                                                       |
| `XCoordinate XCenter()`                              | 矩形の中心の X 座標です。                                                                                        |
| `YCoordinate YCenter()`                              | 矩形の中心の Y 座標です。                                                                                        |
| `Void Inflate( Distance xDist, Distance yDist )`     | 矩形を左右に xDist、上下に yDist だけ拡張します。                                                                       |
| `XCoordinate GetX( Real ratio )`                     | 矩形内の Left と Right の座標の間にある X 座標を、Left + Width \* ratio として算出します。                                      |
| `YCoordinate GetY( Real ratio )`                     | 矩形内の top と Bottom の座標の間にある Y 座標を、Top + Height \* ratio として算出します。                                      |
| `Rect GetInflated( Distance xDist, Distance yDist )` | 「拡張された」矩形を返します。各コーナーは、図形が拡大する方向へ xDist および yDist だけ移動します (左上のコーナーは上方向および左方向へ移動する、など) 。元の矩形自体は変更されません。 |
| `Logic IsEmpty()`                                    | 矩形が画像上の空でない領域、すなわち Left \< Right かつ top \< Bottom となる領域に対応しているかどうかを確認します。                             |

<div id="fuzzyrect">
  ## FuzzyRect
</div>

ファジー矩形。詳細については、[ファジー矩形](/ja/flexi-capture/fls/language/fuzzy-rect)を参照してください。

| Operator | Description                                            |
| :------- | :----------------------------------------------------- |
| `And`    | 2つのファジー矩形の共通部分を求めます。つまり、指定したファジー矩形の境界の範囲どうしの共通部分を求めます。 |
| `Or`     | 2つのファジー矩形を結合します。つまり、指定したファジー矩形の境界の範囲を結合します。            |

| Method                  | Description            |
| :---------------------- | :--------------------- |
| `Rect ExternalRect()`   | 外側の矩形のコピーを返します。        |
| `Rect InternalRect()`   | 内部矩形のコピーを返します。         |
| `XInterval Left()`      | ファジー矩形の左側の境界、水平方向の範囲。  |
| `YInterval top()`       | ファジー矩形の上側の境界、垂直方向の範囲。  |
| `XInterval Right()`     | ファジー矩形の右側の境界、水平方向の範囲。  |
| `YInterval Bottom()`    | ファジー矩形の下側の境界、垂直方向の範囲。  |
| `XInterval XCenter()`   | ファジー矩形の中心のX座標、水平方向の範囲。 |
| `YInterval YCenter()`   | ファジー矩形の中心のY座標、垂直方向の範囲。 |
| `DistInterval Width()`  | ファジー矩形の幅、距離の範囲。        |
| `DistInterval Height()` | ファジー矩形の高さ、距離の範囲。       |
| `Logic IsEmpty()`       | ファジー矩形が空かどうかを確認します。    |

<div id="rectarray">
  ## RectArray
</div>

矩形の配列です。

| Constructor                            | Description                                                    |
| :------------------------------------- | :------------------------------------------------------------- |
| `RectArray RectArray ()`               | 空の矩形配列を作成します。                                                  |
| `RectArray RectArray( Rect rect )`     | パラメーター Rect を持つコンストラクターです。矩形 rect と等しい 1 つの矩形からなる配列を作成します。     |
| `RectArray RectArray( Region region )` | パラメーター Region を持つコンストラクターです。Region region を構成する矩形からなる配列を作成します。 |

| Method                        | Description                           |
| :---------------------------- | :------------------------------------ |
| `Int Count()`                 | 配列の要素数を返します。                          |
| `Region Region()`             | 矩形配列から得られる連続した Region です。             |
| `Rect Rect()`                 | 矩形配列に外接する矩形です。                        |
| `Rect GetAt( Int )`           | 指定した index のアイテムを返します。                |
| `Rect Rect( Int )`            | Rect GetAt( Int ) メソッドと同じですが、旧式の構文です。 |
| `Void Add( Rect rect )`       | 矩形配列に矩形 rect を追加します。                  |
| `Void Add( RectArray array )` | 矩形配列に矩形配列を追加します。                      |

<div id="region">
  ## Region
</div>

Region は、下側の矩形の上辺が上側の矩形の下辺と一致するように上下に並べて配置された矩形の集合です (矩形同士は重なりません) 。

| コンストラクター                               | Description                                                         |
| :------------------------------------- | :------------------------------------------------------------------ |
| `Region Region()`                      | 空の Region を作成します。                                                   |
| `Region Region( RectArray rectArray )` | RectArray 型の値からのコンストラクターです。rectArray 配列に含まれる矩形で構成される Region を作成します。 |

| Operator | Description                                           |
| :------- | :---------------------------------------------------- |
| `Or`     | 2 つの Region を結合します。                                   |
| `And`    | 2 つの Region、または Region と矩形の共通部分を求めます。Region 型の値を返します。 |

| メソッド                                             | Description                              |
| :----------------------------------------------- | :--------------------------------------- |
| `XCoordinate Left()`                             | Region の左側の境界を返します。読み取り専用プロパティです。        |
| `YCoordinate top()`                              | Region の上側の境界を返します。読み取り専用プロパティです。        |
| `XCoordinate Right()`                            | Region の右側の境界を返します。読み取り専用プロパティです。        |
| `YCoordinate Bottom()`                           | Region の下側の境界を返します。読み取り専用プロパティです。        |
| `Distance Width()`                               | Region の幅を返します。読み取り専用プロパティです。            |
| `Distance Height()`                              | Region の高さを返します。読み取り専用プロパティです。           |
| `Area Area()`                                    | Region の面積を返します。読み取り専用プロパティです。           |
| `Void Inflate( Distance xDist, Distance yDist )` | Region を左右に *xDist*、上下に *yDist* だけ拡大します。 |
| `Rect Rect()`                                    | Region に外接する矩形のコピーを返します。                 |

<div id="imageobjectset">
  ## ImageObjectSet
</div>

hypothesis に属する画像オブジェクトの集合を表す型です。

| メソッド                | 説明                                                        |
| :------------------ | :-------------------------------------------------------- |
| `RectArray Rects()` | hypothesis に属する画像オブジェクトの矩形配列のコピーを返します。                    |
| `Region Region()`   | hypothesis に属する画像オブジェクトの矩形配列から作成された連続する Region のコピーを返します。 |

<div id="texttypes">
  ## TextTypes
</div>

テキストタイプの集合を表す型です。

| Operator | Description               |
| :------- | :------------------------ |
| `+`      | TextTypes 型の 2 つの値を結合します。 |

<div id="barcodetypes">
  ## BarcodeTypes
</div>

バーコード種別のセットを表す型です。

| Operator | Description                  |
| :------- | :--------------------------- |
| `+`      | BarcodeTypes 型の 2 つの値を結合します。 |

<div id="barcodeorientations">
  ## BarcodeOrientations
</div>

指定可能なバーコードの向きの集合を表す型です。

| Operator | Description                         |
| :------- | :---------------------------------- |
| `+`      | BarcodeOrientations 型の 2 つの値を結合します。 |

<div id="recognitionmode">
  ## RecognitionMode
</div>

pre-recognition モードを表すために使用される整数型です。

<div id="direction">
  ## Direction
</div>

垂直方向または水平方向を表す型です。Separator 要素および White Gap 要素の方向を設定します。

<div id="horsearchareabound">
  ## HorSearchAreaBound
</div>

要素の検索領域 (search area) の左右の境界を表す型です。この型の変数は、Let 式によってのみ作成できます。

| Operator | Description                                                                      |
| :------- | :------------------------------------------------------------------------------- |
| `-`      | XInterval 型の値から HorSearchAreaBound 型の値を減算する、またはその逆を行う二項演算子です。Xinterval 型の値を返します。 |
| `>, <`   | HorSearchAreaBound 型の値と XCoordinate 型の値を比較する二項演算子です。FuzzyRect 型の値を返します。          |

<h2 id="fl-vertsearchareabound">
  VertSearchAreaBound
</h2>

要素の検索領域の上境界と下境界を表す型です。この型の変数は、Let 式でのみ作成できます。

| Operator | Description                                                                      |
| :------- | :------------------------------------------------------------------------------- |
| `-`      | YInterval 型の値から HorSearchAreaBound 型の値を減算する、またはその逆を行う二項演算子です。Yinterval 型の値を返します。 |
| `>, <`   | VertSearchAreaBound 型の値と YCoordinate 型の値を比較する二項演算子です。FuzzyRect 型の値を返します。         |

<div id="hypothesis">
  ## Hypothesis
</div>

任意の型の要素の仮説を呼び出すために使用する型です。

詳細については、[すべての型の要素の仮説](/ja/flexi-capture/fls/language/hyp-all)を参照してください。

<div id="hypothesisinstances">
  ## HypothesisInstances
</div>

Repeating Group 要素のインスタンスを記述します。仮説と同じメソッドを持ちます。仮説のメソッドの詳細については、[すべての種類の要素に共通する仮説](/ja/flexi-capture/fls/language/hyp-all)を参照してください。

| メソッド                                       | 説明                                                                                 |
| :----------------------------------------- | :--------------------------------------------------------------------------------- |
| `YCoordinateArray GetYArray( Real ratio )` | インスタンスの矩形の Y 座標の配列を返します。Y 座標は次の式で算出されます: Top + Height \* ratio。Null インスタンスは無視されます。 |

<div id="ycoordinatearray">
  ## YCoordinateArray
</div>

矩形の Y 座標の配列です。

| Constructor                           | Description                       |
| :------------------------------------ | :-------------------------------- |
| `YCoordinateArray YCoordinateArray()` | コンストラクター。Y 座標で指定される矩形の空の配列を作成します。 |

| Method                                    | Description                     |
| :---------------------------------------- | :------------------------------ |
| `Void Add( YCoordinate )`                 | 配列の末尾に矩形を追加します。                 |
| `Void Add( YCoordinateArray )`            | 配列の末尾に別の配列を追加します。               |
| `Void InsertAt( Int index, YCoordinate )` | index の位置に矩形を追加します。             |
| `Void DeleteAll()`                        | 配列のすべての要素を削除します。                |
| `Void DeleteAt( Int index )`              | index の位置にある要素を削除します。           |
| `YCoordinate GetAt( Int index )`          | 指定した index の要素を返します。            |
| `Int Count()`                             | 配列内の要素数を返します。                   |
| `Void ShiftDown( Int index, Distance )`   | 配列内の指定した要素の座標を下方向へシフト (増加) します。 |
| `Void ShiftUp( Int index, Distance )`     | 配列内の指定した要素の座標を上方向へシフト (減少) します。 |
| `Void ShiftDown( Distance )`              | 配列内のすべての要素を下方向へシフト (増加) します。    |
| `Void ShiftUp( Distance )`                | 配列内のすべての要素を上方向へシフト (減少) します。    |

<div id="tableblock">
  ## TableBlock
</div>

テーブルブロックにアクセスするための型です。

| メソッド                                   | 説明                                                        |
| :------------------------------------- | :-------------------------------------------------------- |
| `Int ColumnsCount()`                   | ブロック内の列数を返します。                                            |
| `String ColumnName( Int columnIndex )` | columnIndex で指定した列の名前です。columnIndex は列の番号で、番号は 0 から始まります。 |

<div id="tableblockcolumn">
  ## TableBlockColumn
</div>

テーブルブロックの列を呼び出すために使用する型です。

この型の変数は、Let expression を使用した場合にのみ作成できます。詳細については、[Table elements の仮説](/ja/flexi-capture/fls/hypotheses/hyp-table)を参照してください。

<div id="tableblockcolumnarray">
  ## TableBlockColumnArray
</div>

テーブルブロックの列の配列を呼び出すために使用する型です。

この型の変数は、Let 式を使用してのみ作成できます。詳細については、「[Table elements の仮説](/ja/flexi-capture/fls/hypotheses/hyp-table)」を参照してください。

| Constructor                                 | Description                                                                       |
| :------------------------------------------ | :-------------------------------------------------------------------------------- |
| `TableBlockColumnArray( TableBlockColumn )` | 単一の列から列の配列を作成します。例: `TableBlockColumnArray arr; arr = Blocks.TableBlock.Column1;` |

| Method                         | Description       |
| :----------------------------- | :---------------- |
| `Void Add( TableBlockColumn )` | 選択した列を列の配列に追加します。 |

| Operator | Description                                                                                                                                             |
| :------- | :------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `<<`     | 列の配列を別の列の配列に追加する二項演算子です。例: `TableBlockColumnArray arr; arr = Blocks.TableBlock.Column1; arr << Blocks.TableBlock.Column2 << Blocks.TableBlock.Column3;` |

<div id="tablehypothesis">
  ## TableHypothesis
</div>

テーブル要素の仮説を呼び出すために使用する型です。

詳細については、[テーブル要素の仮説](/ja/flexi-capture/fls/hypotheses/hyp-table)を参照してください。

<div id="tablehypcolumn">
  ## TableHypColumn
</div>

テーブル要素の仮説の column を呼び出すために使用する型です。

この型の変数は、Let expression を使用した場合のみ作成できます。詳細については、[Table elements の仮説](/ja/flexi-capture/fls/hypotheses/hyp-table)を参照してください。

<div id="tablecolumntype">
  ## TableColumnType
</div>

列の内容の複数の種類を記述するために使用される型です。

<div id="currencypositiontypes">
  ## CurrencyPositionTypes
</div>

Currency element 内で、数値に対する currency name の位置を設定するために使用する型です。

| Operator | Description                              |
| :------- | :--------------------------------------- |
| `+`      | CurrencyPositionTypes 型の値を結合します。二項演算子です。 |

<div id="pageinterval">
  ## PageInterval
</div>

複数ページ文書のページ区間を表す型です。

| メソッド              | 説明                        |
| :---------------- | :------------------------ |
| `Logic IsEmpty()` | 矩形の範囲が空かどうかを調べます。読み取り専用。  |
| `Int Start()`     | 範囲内の先頭ページの番号を返します。読み取り専用。 |
| `Int End()`       | 範囲内の最終ページの番号を返します。読み取り専用。 |

<div id="pagearea">
  ## PageArea
</div>

ページ上の領域。PageSearchAreaLocal、PageSearchAreaGlobal、PageAreaLocal、PageAreaGlobal の各メソッドが返します (これらの関数はページ番号を引数に取ります) 。呼び出した関数に応じて、グローバル座標またはローカル座標のいずれかで表現されます。

| メソッド                          | 説明                                                           |
| :---------------------------- | :----------------------------------------------------------- |
| `XInterval Left()`            | 指定したページ上にある仮説部分の左側の境界 (水平方向の区間) 。                            |
| `YInterval Top()`             | 指定したページ上にある仮説部分の上側の境界 (垂直方向の区間) 。                            |
| `XInterval Right()`           | 指定したページ上にある仮説部分の右側の境界 (水平方向の区間) 。                            |
| `YInterval Bottom()`          | 指定したページ上にある仮説部分の下側の境界 (垂直方向の区間) 。                            |
| `XInterval XCenter()`         | 指定したページ上にある仮説部分の中心の横座標 (水平方向の区間) 。                           |
| `YInterval YCenter()`         | 指定したページ上にある仮説部分の中心の縦座標 (垂直方向の区間) 。                           |
| `DistInterval Width()`        | 指定したページ上にある仮説部分の幅。                                           |
| `DistInterval Height()`       | 指定したページ上にある仮説部分の高さ。                                          |
| `FuzzyRect FuzzyRect()`       | 指定したページ上にある仮説部分のファジー矩形。                                      |
| `Rect Rect()`                 | 指定したページ上にある仮説部分を囲む矩形。ファジー矩形の外側矩形と一致します。                      |
| `Region Region()`             | 指定したページ上にある仮説部分の Region。                                     |
| `Region SimplifiedRegion()`   | 指定したページ上にある仮説部分の Region を、見やすくするために簡略化したもの。                  |
| `ImageObjectSet Set()`        | 指定したページ上にある仮説部分が抽出した画像オブジェクト。                                |
| `ImageObjectSet ExcludeSet()` | Exclude メソッドによって、指定したページ上にある仮説部分の検索領域から除外された画像部分にある画像オブジェクト。 |
| `RectArray Rects()`           | 指定したページ上にある仮説部分が抽出した画像オブジェクトの矩形の配列。                          |

<div id="pageedge">
  ## PageEdge
</div>

ページの端を基準に Nearest function を指定するための型です。ページの上端、下端、左端、または右端に最も近い hypothesis を選択できます。

<div id="page">
  ## Page
</div>

Page( Int PageNumber ) 関数が返す型です。

| メソッド                                                                     | Description                                                               |
| :----------------------------------------------------------------------- | :------------------------------------------------------------------------ |
| `Distance AverageLineHeight()`                                           | ページ上の平均行高さ。                                                               |
| `Distance AverageInterlineInterval()`                                    | ページ上の平均行間隔。                                                               |
| `Area ObjectsAreaLocal( Rect localRect, ImageObjectType )`               | 指定した型のページ上で、指定した矩形内にあるオブジェクトの面積。矩形にはローカル座標が使用されます。                        |
| `Area ObjectsIntersectionAreaLocal( Rect localRect, ImageObjectType )`   | 指定した型のページ上で、指定した矩形内にあるオブジェクトの合計面積と、オブジェクトと矩形との交差部分の面積。矩形にはローカル座標が使用されます。  |
| `Area ObjectsAreaGlobal( Rect globalRect, ImageObjectType )`             | 指定した型のページ上で、指定した矩形内にあるオブジェクトの面積。矩形にはグローバル座標が使用されます。                       |
| `Area ObjectsIntersectionAreaGlobal( Rect globalRect, ImageObjectType )` | 指定した型のページ上で、指定した矩形内にあるオブジェクトの合計面積と、オブジェクトと矩形との交差部分の面積。矩形にはグローバル座標が使用されます。 |
| `Rect RectLocal()`                                                       | ローカル座標での画像全体の矩形。                                                          |
| `Rect RectGlobal()`                                                      | グローバル座標での画像全体の矩形。                                                         |

<div id="searchareapagesettype">
  ## SearchAreaPageSetType
</div>

RestrictSearchArea 関数で使用される型です。この型の事前定義された定数は、`AnyPage`、`OddPages`、`EvenPages`、`LastPage` です。

<div id="intarray">
  ## IntArray
</div>

整数の配列です。

| Constructor                | Description                                    |
| :------------------------- | :--------------------------------------------- |
| `IntArray IntArray()`      | 空の配列を作成します。                                    |
| `IntArray IntArray( Int )` | パラメーター Int を持つコンストラクターです。この整数のみを要素とする配列を作成します。 |

| Method                                   | Description                 |
| :--------------------------------------- | :-------------------------- |
| `Int Count()`                            | 配列内の要素数を返します。               |
| `Int GetAt( Int )`                       | 指定したインデックスの要素を返します。         |
| `Void Add( Int )`                        | 配列の末尾に整数を追加します。             |
| `Void Add( IntArray )`                   | 配列の末尾に別の配列を追加します。           |
| `Void InsertAt( Int index, Int number )` | 位置 index に整数 number を追加します。 |
| `Void DeleteAll()`                       | 配列のすべての要素を削除します。            |
| `Void DeleteAt( Int index )`             | 位置 index にある要素を削除します。       |

| Operator | Description        |
| :------- | :----------------- |
| `<<`     | 配列に整数を追加する二項演算子です。 |

<div id="stringarray">
  ## StringArray
</div>

文字列の配列です。

| コンストラクター                    | 説明          |
| :-------------------------- | :---------- |
| `StringArray StringArray()` | 空の配列を作成します。 |

| メソッド                                 | 説明                    |
| :----------------------------------- | :-------------------- |
| `Int Count()`                        | 配列内の要素数を返します。         |
| `String GetAt( Int index )`          | 指定した index の要素を返します。  |
| `Void Add( String )`                 | 配列の末尾に文字列を追加します。      |
| `Void Add( StringArray )`            | 配列の末尾に別の配列を追加します。     |
| `Void InsertAt( Int index, String )` | index の位置に文字列を追加します。  |
| `Void DeleteAll()`                   | 配列のすべての要素を削除します。      |
| `Void DeleteAt( Int index )`         | index の位置にある要素を削除します。 |

<div id="intfuzzyinterval">
  ## IntFuzzyInterval
</div>

整数のファジー区間を表す型です。ファジー区間は Int 型の 4 つの値で表され、各値は直前の値以上である必要があります。

| Constructor                                      | Description                              |
| :----------------------------------------------- | :--------------------------------------- |
| `IntFuzzyInterval IntFuzzyInterval( Int value )` | 整数からのコンストラクター。4 つの値すべてを「value」の値で初期化します。 |

| Initialization                        | Description                                                                                                                                             |
| :------------------------------------ | :------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `Expression of type {x1, x2, x3, x4}` | IntFuzzyInterval 型の変数は、`{x1, x2, x3, x4}` 型の式で初期化できます。ここで x1、x2、x3、x4 は Int 型の値です。例: `Int x1 = 5; IntFuzzyInterval intFuzzyInt = {x1, 200, 300, 5000};` |

| Operator | Description                                                                      |
| :------- | :------------------------------------------------------------------------------- |
| `+`      | IntFuzzyInterval 型の値に Int 型の値を加算する二項加算演算子です。IntFuzzyInterval 型の値を返します。           |
| `+`      | IntFuzzyInterval 型の値に DistInterval 型の値を加算する二項加算演算子です。IntFuzzyInterval 型の値を返します。  |
| `-`      | IntFuzzyInterval 型の値から Int 型の値を減算する二項減算演算子です。IntFuzzyInterval 型の値を返します。          |
| `-`      | Int 型の値から IntFuzzyInterval 型の値を減算する二項減算演算子です。IntFuzzyInterval 型の値を返します。          |
| `-`      | IntFuzzyInterval 型の値から DistInterval 型の値を減算する二項減算演算子です。IntFuzzyInterval 型の値を返します。 |
| `-`      | DistInterval 型の値から IntFuzzyInterval 型の値を減算する二項減算演算子です。IntFuzzyInterval 型の値を返します。 |
| `*`      | IntFuzzyInterval 型の値に Int 型の値を乗算する二項乗算演算子です。IntFuzzyInterval 型の値を返します。           |
| `*`      | IntFuzzyInterval 型の値に DistInterval 型の値を乗算する二項乗算演算子です。IntFuzzyInterval 型の値を返します。  |
| `/`      | IntFuzzyInterval 型の値を Int 型の値で除算する二項除算演算子です。IntFuzzyInterval 型の値を返します。           |

<div id="distfuzzyinterval">
  ## DistFuzzyInterval
</div>

距離のファジー整数区間を表す型です。ファジー区間は Distance 型の 4 つの値で表され、各値は直前の値以上である必要があります。

| Constructor                                              | Description                                           |
| :------------------------------------------------------- | :---------------------------------------------------- |
| `DistFuzzyInterval DistFuzzyInterval ( Distance value )` | Distance 型の値から生成するコンストラクター。4 つの値すべてを「value」の値で初期化します。 |

| 初期化                                   | Description                                                                                                                                                                  |
| :------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Expression of type {d1, d2, d3, d4}` | DistFuzzyInterval 型の変数は、`{d1, d2, d3, d4}` 型の式で初期化できます。ここで d1、d2、d3、d4 は Distance 型の値です。例: `Distance d1 = 5dt; DistFuzzyInterval distFuzzyInt = {d1, 200dt, 300dt, 5000dt};` |

| Operator | Description                                                                      |
| :------- | :------------------------------------------------------------------------------- |
| `+`      | DistFuzzyInterval 型の値に Distance 型の値を加算する二項加算演算子。DistFuzzyInterval 型の値を返します。      |
| `+`      | DistFuzzyInterval 型の値に DistInterval 型の値を加算する二項加算演算子。DistFuzzyInterval 型の値を返します。  |
| `-`      | DistFuzzyInterval 型の値から Distance 型の値を減算する二項減算演算子。DistFuzzyInterval 型の値を返します。     |
| `-`      | Distance 型の値から DistFuzzyInterval 型の値を減算する二項減算演算子。DistFuzzyInterval 型の値を返します。     |
| `-`      | DistFuzzyInterval 型の値から DistInterval 型の値を減算する二項減算演算子。DistFuzzyInterval 型の値を返します。 |
| `-`      | DistInterval 型の値から DistFuzzyInterval 型の値を減算する二項減算演算子。DistFuzzyInterval 型の値を返します。 |
| `*`      | DistFuzzyInterval 型の値に Int 型の値を乗算する二項乗算演算子。DistFuzzyInterval 型の値を返します。           |
| `*`      | DistFuzzyInterval 型の値に DistInterval 型の値を乗算する二項乗算演算子。DistFuzzyInterval 型の値を返します。  |
| `/`      | DistFuzzyInterval 型の値を Int 型の値で除算する二項除算演算子。DistFuzzyInterval 型の値を返します。           |

<div id="areafuzzyinterval">
  ## AreaFuzzyInterval
</div>

面積のファジー整数区間を表す型です。ファジー区間は Area 型の 4 つの値で表され、各値は直前の値以上である必要があります。

| コンストラクター                                             | 説明                                                  |
| :--------------------------------------------------- | :-------------------------------------------------- |
| `AreaFuzzyInterval AreaFuzzyInterval ( Area value )` | Area 型の値から生成するコンストラクターです。4 つの値をすべて「value」の値で初期化します。 |

| 初期化                                   | 説明                                                                                                                                                                                                    |
| :------------------------------------ | :---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `Expression of type {a1, a2, a3, a4}` | AreaFuzzyInterval 型の変数は、`{a1, a2, a3, a4}` 形式の expression で初期化できます。ここで a1、a2、a3、a4 は Area 型の値です。例: `Area a1 = 500dt*dt; AreaFuzzyInterval areaFuzzyInterval = {a1, 2000dt*dt, 3000dt*dt, 5000dt*dt};` |

| 演算子 | 説明                                                                         |
| :-- | :------------------------------------------------------------------------- |
| `+` | AreaFuzzyInterval 型の値に Area 型の値を加算する二項加算演算子です。AreaFuzzyInterval 型の値を返します。  |
| `-` | AreaFuzzyInterval 型の値から Area 型の値を減算する二項減算演算子です。AreaFuzzyInterval 型の値を返します。 |
| `-` | Area 型の値から AreaFuzzyInterval 型の値を減算する二項減算演算子です。AreaFuzzyInterval 型の値を返します。 |
| `*` | AreaFuzzyInterval 型の値に Int 型の値を乗算する二項乗算演算子です。AreaFuzzyInterval 型の値を返します。   |
| `/` | AreaFuzzyInterval 型の値を Int 型の値で除算する二項除算演算子です。AreaFuzzyInterval 型の値を返します。   |

<div id="textrotations">
  ## TextRotations
</div>

要素の検索対象となる、認識されたテキストの向きの集合を表す型です。

| Operator | Description              |
| :------- | :----------------------- |
| `+`      | TextRotations 型の値を結合します。 |
