열 검색 Parameter
| Parameter | Description |
|---|---|
| Void AddHeaderKeyWord( String keyWord, String columnName, Real omissionQuality = worstQuality, Logic wholeWordMode = false, Logic multiLine = false ) | 열 이름에 대한 키워드를 지정합니다. |
| Void AddHeaderKeyHypothesis( Hypothesis hypothesis, String columnName ) | 검출된 Hypothesis를 사용하여 열 이름을 지정합니다. |
| Void AddHeaderKeyHypothesis( XInterval left, YInterval top, XInterval right, YInterval bottom, String columnName ) | 열 이름의 좌표를 지정합니다. |
| Void AddColumnType( TableColumnType type, String columnName, String regExp = emptyString ) | 열 유형을 지정합니다. 세 번째 Parameter는 열 유형이 정규 표현식인 경우에만 지정해야 합니다. TableColumnType의 가능한 값: ColumnType_Text—Text 데이터 형식 ColumnType_Currency—금액 데이터 형식 ColumnType_Date—날짜 데이터 형식 ColumnType_RegExp—정규 표현식 ColumnType_Number—숫자 데이터 형식 |
| Void ColumnOmissionQuality( Real quality, String columnName ) | 고정 열 순서를 사용하는 경우, 이 Parameter는 패널티를 설정합니다. 패널티는 고정 열 순서에 지정된 열을 찾지 못했을 때 해당 hypothesis의 품질에 곱해지는 계수(0에서 1 사이의 숫자)로 정의됩니다. 기본값은 0.9입니다. |
| Void MissingContentPenalty( Real quality, String columnName ) | 이 Parameter는 패널티를 설정하며, 실제 열의 데이터 형식이 사용자가 지정한 데이터 형식과 일치하지 않을 경우 해당 hypothesis의 품질에 곱해지는 계수(0에서 1 사이의 숫자)로 정의됩니다. Parameter를 설정하지 않으면 기본값은 0.98입니다. 열 순서 규칙을 사용하는 경우, 테이블에 해당 열이 없을 때의 패널티를 지정합니다. |
| Void ColumnBounds( XCoordinate left, XCoordinate right, String columnName ) | 열에 대한 검색 영역의 좌우 경계를 설정합니다. |
| Void ExactColumnBorders( XCoordinate left, XCoordinate right, String columnName ) | 정확한 열 경계를 설정합니다. 이 Parameter는 일부(또는 전체) 열의 위치가 미리 알려져 있을 때 테이블을 검색하는 데 사용할 수 있습니다. |
| Void AddColumnContent( Hypothesis hypothesis, String columnName ) | 검출된 Hypothesis를 사용하여 열의 내용을 지정합니다. |
| Void AddColumnContent( XInterval, XInterval, String ) | 열의 좌우 경계를 설정하여 열의 내용을 지정합니다. |
열 순서를 설정하는 Parameter
| Parameter | 설명 |
|---|---|
| Void AddPossibleColumnsOrder( String orderName, StringArray columnNames ) | 고정된 열 순서의 한 가지 변형을 지정합니다. |
| Void ColumnsRelation( StringArray columnNames ) | 열 순서 규칙을 지정합니다. |
Header Search Parameters
| Parameter | Description |
|---|---|
| Void HasHeader( Logic ) | 활동에서 헤더를 검색할지 여부를 지정합니다. |
| Void HeaderOptional( Real q1, Real q2 ) | 헤더가 필수인지 선택 사항인지 여부를 지정합니다. 요소에 사용되는 Void Optional ( Real q1, Real q2 ) 함수와 유사하게 동작합니다. |
| Void HeaderSearchArea( Rect ) | 헤더에 대한 검색 사각형 영역을 지정합니다. 이 함수를 사용하면 헤더의 검색 영역은 이 사각형과 전체 표의 검색 영역을 둘러싸는 사각형의 교집합으로 계산됩니다. |
| Void MaxHeaderHypothesesCount( Int ) | 헤더 검색 중 생성할 가설의 최대 개수를 설정합니다. |
| Void MinHeaderKeyElements( Int ) | 헤더를 감지하는 데 필요한 키 요소의 최소 개수를 설정합니다. 기본값은 2입니다. |
| Void ExtendHeaderLocalization( XInterval, YInterval, XInterval, YInterval ) | 헤더로 간주되는 영역을 확장합니다. 예를 들어, 헤더와 표 본문 사이에 위치한 불필요한 정보가 들어 있는 한 줄을 제외하는 데 사용할 수 있습니다. |
| Parameter | Description |
|---|---|
| Void HasFooter( Logic has = true ) | 액티비티가 바닥글을 찾아야 하는지 여부를 지정합니다. |
| Void FooterOptional( Real q1, Real q2 ) | 바닥글이 선택 사항인지 여부를 지정합니다. 요소에 사용하는 Void Optional ( Real q1, Real q2 ) 함수와 유사하게 동작합니다. |
| Void FooterSearchArea( Rect ) | 바닥글에 대한 검색 사각형을 지정합니다. 이 함수를 사용하면 바닥글 검색 영역은 이 사각형과 전체 테이블 검색 영역을 둘러싸는 사각형의 교집합으로 계산됩니다. |
| Void FooterHasTopSeparator() | 바닥글과 테이블 본문 사이에 구분선이 있음을 지정합니다. 이 구분선은 테이블 경계의 일부일 수 있습니다. |
| Void FooterWholeWordMode ( Logic wholeWordMode = true ) | 키워드를 기반으로 바닥글을 검색할 때 사용하는 플래그입니다. 이 플래그가 True이면 단어 일부로만 구성된 가설은 버립니다. 기본 설정은 False입니다. |
| Void FooterNearestToTop ( Logic ) | 키워드를 기반으로 바닥글을 검색할 때 사용하는 플래그입니다. 이 플래그가 True이면 액티비티는 가장 위에 있는 후보를 선택하고 나머지는 버립니다. 이 플래그가 False이면 액티비티는 가능한 모든 후보를 고려합니다. 바닥글의 품질은 테이블의 품질에 반영되며, 이후 가장 품질이 높은 테이블 가설이 선택됩니다. 기본 설정은 True입니다. |
| Void AddFooterKeyWord( String keyWord ) | 테이블 바닥글에 대한 키워드를 지정합니다. |
| Void AddFooterKeyHypothesis( Hypothesis hypothesis ) | 감지된 가설을 사용하여 테이블의 바닥글을 지정합니다. |
| Void AddFooterKeyHypothesis( XInterval, YInterval, XInterval, YInterval ) | 테이블 바닥글의 좌표를 지정합니다. |
Body Search Parameters
| Parameter | Description |
|---|---|
| Void DontFindBody() | 본문 검색을 건너뜁니다. 디버깅에 사용합니다. |
| Void BodyOptional( Real q1, Real q2 ) | 본문이 선택 사항인지 여부를 지정합니다. 요소에 사용하는 Void Optional ( Real q1, Real q2 ) 함수와 유사하게 동작합니다. |
| Void IgnoreVerticalSeparators() | 테이블을 열로 분할할 때 테이블 본문에 있는 수직 구분 기호를 무시합니다(기본적으로는 구분 기호를 고려합니다). |
| Void IgnoreSeparatorsFromHeader() | 테이블을 열로 분할할 때 테이블 헤더에 있는 수직 구분 기호를 무시합니다(기본적으로는 수직 구분 기호를 고려합니다). |
| Void AutoDetectLeftAndRight( Logic ) | 테이블의 왼쪽 및 오른쪽 경계를 자동으로 감지하도록 설정합니다. 기본값은 True입니다. |
| Void AutoDetectTopAndBottom( Logic ) | 테이블의 위쪽 및 아래쪽 경계를 자동으로 감지하도록 설정합니다. 기본값은 True입니다. 이 플래그를 False로 설정하면 테이블 요소의 검색 영역 안에 있는 전체 텍스트가 사용됩니다. |
행 감지 Parameter
| Parameter | Description |
|---|---|
| Void SingleLineTable( Logic ) | 각 텍스트 줄이 표의 하나의 행에 대응해야 함을 작업(Activity)에 지정합니다. |
| Void SingleLineMasterColumn( Logic ) | 각 텍스트 줄이 표의 마스터 열에서 하나의 행에 대응해야 함을 작업(Activity)에 지정합니다. |
| Void MaxRowVerticalGap( Distance ) | 표에서 두 행 사이의 최대 수직 거리를 지정합니다. 지정한 거리보다 크면 표 본문의 끝을 의미합니다. 기본적으로 이 거리는 제한되지 않습니다. |
| Void MinRowVerticalGap( Distance ) | 표에서 두 행 사이의 최소 수직 거리를 지정합니다. 거리가 지정한 값보다 작으면 행이 병합됩니다. 기본값은 0입니다. |
| Void MaxMasterColumnRowGap( Distance ) | 표의 마스터 열에서 두 행 사이의 최대 수직 거리를 지정합니다. 지정한 거리보다 크면 표 본문의 끝을 의미합니다. 기본적으로 이 거리는 제한되지 않습니다. |
| Void MinMasterColumnRowGap( Distance ) | 특정 열에서 두 표 행 사이의 최소 수직 거리를 지정합니다. 거리가 지정한 값보다 작으면 행이 병합됩니다. 기본값은 0입니다. |
| Void IgnoreHorizontalSeparators() | 표를 행으로 분할할 때 가로 구분선을 무시합니다. |
| Void DivideRowsBySeparators() | 텍스트는 무시하고 구분선만을 기준으로 행을 감지합니다. |
| Void DivideRowsByMasterColumn( String columnName ) | 표를 행으로 분할할 때 해당 열의 텍스트를 사용하도록 작업(Activity)에 지정합니다. 이 함수는 여러 번 호출할 수 있습니다. 이미지의 표에 필요한 열이 없으면 다음 함수 호출에서 지정한 열이 사용되는 식으로 진행됩니다. 모든 열을 사용할 수 없는 경우 전체 표에서 행을 감지합니다. |
| Void MasterColumnTextAlignment( TextAlignmentInTableCell ) | 마스터 열에서 표 셀의 텍스트 정렬을 지정합니다. 가능한 값: TextAlignment_CellTop, TextAlignment_CellBottom. 예: MasterColumnTextAlignment: TextAlignment_CellBottom; - 텍스트가 셀의 아래쪽 테두리에 맞춰 정렬됩니다. |
| Void AddStopWord( String ) | 별도의 행을 생성하지 말아야 하는 단어를 지정합니다. |
| Void RowSplitters( YCoordinateArray, Logic isBodyTopIncluded = true, Logic isBodyBottomIncluded = true ) | 표를 행으로 분할하기 위한 구분선을 지정합니다. isBodyTopIncluded == true - 표 본문의 위쪽 경계를 지정합니다. isBodyBottomIncluded == true - 표 본문의 아래쪽 경계를 지정합니다. isBodyTopIncluded == false - 표 본문의 위쪽 경계가 자동으로 감지됩니다. isBodyBottomIncluded == false - 표 본문의 아래쪽 경계가 자동으로 감지됩니다. 표 검색 영역 밖에 지정된 구분선은 모두 무시됩니다. 예: let yArray = RepeatingGroup.AllInstances.GetYArray(1); RowSplitters( yArray ); |
다중 페이지 테이블 Parameter
| Parameter | Description |
|---|---|
| Void HeaderOnEachPage( Logic has = true ) | 테이블 헤더가 모든 페이지에 나타나도록 지정합니다(각 한 페이지짜리 하위 테이블의 시작 부분에 위치). |
| Void AddHeaderKeyHypotheses( HypothesisInstances, String columnName ) | 반복 그룹의 하위 요소에 대한 가설 집합을 사용하여, 여러 페이지에 걸쳐 있는 열 이름을 지정합니다. |
| Void FooterOnEachPage( Logic has = true ) | 테이블 푸터가 모든 페이지에 나타나도록 지정합니다. |
| Void AddFooterKeyHypotheses( HypothesisInstances ) | 반복 그룹의 하위 요소에 대한 가설 집합을 사용하여, 여러 페이지에 걸쳐 있는 테이블 푸터를 지정합니다. |
| Void PreviousInstances( TableHypothesisInstances ) | 테이블이 반복 그룹 내부에 있는 경우, 이전 테이블 인스턴스를 지정합니다. 인스턴스의 방향은 위에서 아래로라고 가정하며, 동일한 페이지 내에서는 열 경계가 이동하지 않고, 페이지 간에는 수평으로 약간 이동할 수 있습니다. 테이블에 헤더가 없거나 헤더를 감지하지 못한 경우, 이전 인스턴스를 사용하여 열을 찾거나 열 검색을 개선합니다. |
