Paramètres de recherche de colonnes
| Parameter | Description |
|---|---|
| Void AddHeaderKeyWord( String keyWord, String columnName, Real omissionQuality = worstQuality, Logic wholeWordMode = false, Logic multiLine = false ) | Spécifie le mot-clé du nom de la colonne. |
| Void AddHeaderKeyHypothesis( Hypothesis hypothesis, String columnName ) | Spécifie le nom de la colonne sur la base de l’hypothèse détectée. |
| Void AddHeaderKeyHypothesis( XInterval left, YInterval top, XInterval right, YInterval bottom, String columnName ) | Spécifie les coordonnées du nom de la colonne. |
| Void AddColumnType( TableColumnType type, String columnName, String regExp = emptyString ) | Spécifie le type de colonne. Le troisième paramètre ne doit être indiqué que si le type de colonne est une expression régulière. Valeurs possibles de TableColumnType : ColumnType_Text — type de données Text ColumnType_Currency — type de données Amount of money ColumnType_Date — type de données Date ColumnType_RegExp — expression régulière ColumnType_Number — type de données Number |
| Void ColumnOmissionQuality( Real quality, String columnName ) | Si un ordre de colonnes fixe est utilisé, ce paramètre définit la pénalité appliquée aux hypothèses, sous la forme d’un coefficient (un nombre de 0 à 1) par lequel la qualité de l’hypothèse sera multipliée si la colonne spécifiée dans l’ordre fixe n’est pas détectée. La valeur par défaut est 0,9. |
| Void MissingContentPenalty( Real quality, String columnName ) | Définit la pénalité appliquée aux hypothèses, sous la forme d’un coefficient (un nombre de 0 à 1) par lequel la qualité de l’hypothèse sera multipliée si le type de données réel de la colonne ne correspond pas au type de données spécifié par l’utilisateur. Si le paramètre n’est pas défini, sa valeur par défaut est 0,98. Si des règles d’ordre des colonnes sont utilisées, il spécifie la pénalité pour l’absence de la colonne dans le tableau. |
| Void ColumnBounds( XCoordinate left, XCoordinate right, String columnName ) | Définit les limites gauche et droite de la zone de recherche pour la colonne. |
| Void ExactColumnBorders( XCoordinate left, XCoordinate right, String columnName ) | Définit les limites exactes de la colonne. Ce paramètre peut être utilisé pour rechercher un tableau lorsque l’emplacement de certaines (ou de toutes) des colonnes est connu à l’avance. |
| Void AddColumnContent( Hypothesis hypothesis, String columnName ) | Spécifie le contenu de la colonne sur la base de l’hypothèse détectée. |
| Void AddColumnContent( XInterval, XInterval, String ) | Spécifie le contenu de la colonne en définissant ses limites gauche et droite. |
Paramètres de définition de l’ordre des colonnes
| Parameter | Description |
|---|---|
| Void AddPossibleColumnsOrder( String orderName, StringArray columnNames ) | Spécifie une variante d’ordre de colonnes fixe. |
| Void ColumnsRelation( StringArray columnNames ) | Spécifie une règle pour l’ordre des colonnes. |
Paramètres de recherche d’en-tête
| Parameter | Description |
|---|---|
| Void HasHeader( Logic ) | Indique si l’activité doit rechercher un en-tête. |
| Void HeaderOptional( Real q1, Real q2 ) | Indique si l’en-tête est facultatif, de façon similaire à la fonction Void Optional ( Real q1, Real q2 ) pour les éléments. |
| Void HeaderSearchArea( Rect ) | Spécifie le Rectangle de recherche pour l’en-tête. Si cette fonction est utilisée, la zone de recherche de l’en-tête sera calculée comme l’intersection de ce Rectangle et de celui qui englobe la zone de recherche de l’ensemble du tableau. |
| Void MaxHeaderHypothesesCount( Int ) | Définit le nombre maximal d’hypothèses à générer lors de la recherche de l’en-tête. |
| Void MinHeaderKeyElements( Int ) | Définit le nombre minimal d’éléments clés requis pour détecter l’en-tête. La valeur par défaut est 2. |
| Void ExtendHeaderLocalization( XInterval, YInterval, XInterval, YInterval ) | Étend la zone considérée comme l’en-tête. Par exemple, cela peut être utilisé pour ignorer la ligne d’informations indésirables située entre l’en-tête et le corps du tableau. |
| Parameter | Description |
|---|---|
| Void HasFooter( Logic has = true ) | Indique si l’activité doit rechercher le pied de page. |
| Void FooterOptional( Real q1, Real q2 ) | Indique si le pied de page est facultatif, de manière similaire à la fonction Void Optional ( Real q1, Real q2 ) pour les éléments. |
| Void FooterSearchArea( Rect ) | Spécifie le Rectangle de recherche pour le pied de page. Si cette fonction est utilisée, la zone de recherche du pied de page est calculée comme l’intersection de ce Rectangle et de celui qui englobe la zone de recherche de l’ensemble du tableau. |
| Void FooterHasTopSeparator() | Indique qu’il existe un séparateur entre le pied de page et le corps du tableau. Le séparateur peut faire partie d’une bordure de tableau. |
| Void FooterWholeWordMode ( Logic wholeWordMode = true ) | Ce paramètre est utilisé lors de la recherche d’un pied de page basée sur des mots-clés. S’il est défini sur True, les hypothèses constituées uniquement de fragments de mots sont écartées. La valeur par défaut est False. |
| Void FooterNearestToTop ( Logic ) | Ce paramètre est utilisé lors de la recherche d’un pied de page basée sur des mots-clés. S’il est défini sur True, l’activité sélectionne le candidat le plus haut et écarte les autres. S’il est défini sur False, l’activité prend en compte tous les candidats possibles. La qualité du pied de page contribue à la qualité du tableau, puis l’hypothèse de tableau de la plus haute qualité est sélectionnée. La valeur par défaut est True. |
| Void AddFooterKeyWord( String keyWord ) | Spécifie un mot-clé pour le pied de page du tableau. |
| Void AddFooterKeyHypothesis( Hypothesis hypothesis ) | Spécifie le pied de page du tableau au moyen de l’hypothèse détectée. |
| Void AddFooterKeyHypothesis( XInterval, YInterval, XInterval, YInterval ) | Spécifie les coordonnées du pied de page du tableau. |
Paramètres de recherche du corps
| Parameter | Description |
|---|---|
| Void DontFindBody() | Permet d’ignorer la recherche du corps. Utilisé pour le débogage. |
| Void BodyOptional( Real q1, Real q2 ) | Indique si le corps est facultatif, de façon similaire à la fonction Void Optional ( Real q1, Real q2 ) pour les éléments. |
| Void IgnoreVerticalSeparators() | Ignore les séparateurs verticaux dans le corps du tableau lors du découpage du tableau en colonnes (par défaut, les séparateurs sont pris en compte). |
| Void IgnoreSeparatorsFromHeader() | Ignore les séparateurs verticaux dans l’en-tête du tableau lors du découpage du tableau en colonnes (par défaut, les séparateurs verticaux sont pris en compte). |
| Void AutoDetectLeftAndRight( Logic ) | Active la détection automatique des limites gauche et droite du tableau. La valeur par défaut est True. |
| Void AutoDetectTopAndBottom( Logic ) | Active la détection automatique des limites supérieure et inférieure du tableau. La valeur par défaut est True. Si le paramètre est défini sur False, tout le texte à l’intérieur de la zone de recherche de l’élément de tableau est utilisé. |
Paramètres de détection des lignes
| Parameter | Description |
|---|---|
| Void SingleLineTable( Logic ) | Indique à l’activité que chaque ligne de texte doit correspondre à une ligne du tableau. |
| Void SingleLineMasterColumn( Logic ) | Indique à l’activité que chaque ligne de texte doit correspondre à une ligne de la colonne principale du tableau. |
| Void MaxRowVerticalGap( Distance ) | Indique la distance verticale maximale entre deux lignes du tableau. Si la distance spécifiée est dépassée, cela marque la fin du corps du tableau. Par défaut, cette distance n’est pas limitée. |
| Void MinRowVerticalGap( Distance ) | Indique la distance verticale minimale entre deux lignes du tableau. Si la distance est inférieure à la valeur spécifiée, les lignes sont fusionnées. La valeur par défaut est 0. |
| Void MaxMasterColumnRowGap( Distance ) | Indique la distance verticale maximale entre deux lignes dans la colonne principale du tableau. Si la distance spécifiée est dépassée, cela marque la fin du corps du tableau. Par défaut, cette distance n’est pas limitée. |
| Void MinMasterColumnRowGap( Distance ) | Indique la distance verticale minimale entre deux lignes du tableau dans une colonne donnée. Si la distance est inférieure à la valeur spécifiée, les lignes sont fusionnées. La distance par défaut est 0. |
| Void IgnoreHorizontalSeparators() | Ignore les séparateurs horizontaux lors de la division du tableau en lignes. |
| Void DivideRowsBySeparators() | Détecte les lignes en s’appuyant uniquement sur les séparateurs et en ignorant le texte. |
| Void DivideRowsByMasterColumn( String columnName ) | Indique à l’activité d’utiliser le texte de la colonne pour diviser le tableau en lignes. Cette fonction peut être appelée plusieurs fois. Si un tableau dans une image ne comporte pas la colonne requise, la colonne de l’appel suivant de la fonction est utilisée, etc. Si toutes les colonnes sont indisponibles, les lignes sont détectées sur l’ensemble du tableau. |
| Void MasterColumnTextAlignment( TextAlignmentInTableCell ) | Indique l’alignement du texte dans une cellule du tableau de la colonne principale. Valeurs possibles : TextAlignment_CellTop, TextAlignment_CellBottom. Exemple : MasterColumnTextAlignment: TextAlignment_CellBottom; — le texte est aligné sur la bordure inférieure de la cellule. |
| Void AddStopWord( String ) | Spécifie les mots pour lesquels des lignes distinctes ne doivent pas être dessinées. |
| Void RowSplitters( YCoordinateArray, Logic isBodyTopIncluded = true, Logic isBodyBottomIncluded = true ) | Spécifie des séparateurs pour diviser le tableau en lignes : isBodyTopIncluded == true — spécifie le haut du corps du tableau, isBodyBottomIncluded == true — spécifie le bas du corps du tableau, isBodyTopIncluded == false — le haut du corps du tableau est détecté automatiquement, isBodyBottomIncluded == false — le bas du corps du tableau est détecté automatiquement. Tout séparateur spécifié en dehors de la zone de recherche du tableau est ignoré. Exemple : let yArray = RepeatingGroup.AllInstances.GetYArray(1); RowSplitters( yArray ); |
Paramètres de tableau multi‑pages
| Parameter | Description |
|---|---|
| Void HeaderOnEachPage( Logic has = true ) | Indique que l’en‑tête du tableau apparaît sur chaque page (au début de chaque sous‑table d’une seule page). |
| Void AddHeaderKeyHypotheses( HypothesisInstances, String columnName ) | Spécifie un nom de colonne sur plusieurs pages au moyen d’un ensemble d’hypothèses pour un sous‑élément d’un groupe répétitif. |
| Void FooterOnEachPage( Logic has = true ) | Indique que le pied de tableau apparaît sur chaque page. |
| Void AddFooterKeyHypotheses( HypothesisInstances ) | Spécifie un pied de tableau sur plusieurs pages au moyen d’un ensemble d’hypothèses pour un sous‑élément d’un groupe répétitif. |
| Void PreviousInstances( TableHypothesisInstances ) | Spécifie les instances précédentes du tableau si celui‑ci se trouve dans un groupe répétitif. On suppose que l’ordre des instances va de haut en bas, que les limites des colonnes ne se déplacent pas au sein d’une même page et qu’elles peuvent être légèrement décalées horizontalement d’une page à l’autre. Les instances précédentes servent à rechercher les colonnes ou à améliorer leur recherche si le tableau n’a pas d’en‑tête ou si l’en‑tête n’est pas détecté. |
