Passer au contenu principal
Une zone de recherche est définie par un ensemble de contraintes de recherche et de relations. Elle indique au programme où rechercher les objets décrits par les éléments. Les zones de recherche sont constituées d’un ou de plusieurs rectangles qui ne doivent pas nécessairement avoir de limites communes, c’est-à-dire qu’elles peuvent être discontinues. Une zone de recherche peut être définie par des contraintes de recherche absolues, c’est-à-dire par des coordonnées, ou par des contraintes de recherche relatives, c’est-à-dire par des relations avec d’autres éléments. Lors de la définition de contraintes de recherche relatives, vous pouvez utiliser tous les éléments situés au-dessus de l’élément décrit dans l’arborescence FlexiLayout (l’objet image correspondant à cet élément ne peut être trouvé qu’à l’aide d’informations sur les objets déjà trouvés décrits par les éléments situés plus haut dans l’arborescence).

Spécifiez les coordonnées absolues d’une zone de recherche

Une zone de recherche absolue est définie dans l’onglet Contraintes de recherche de la boîte de dialogue Properties de l’élément. Pour les documents multipages, vous pouvez sélectionner une plage de pages dans laquelle rechercher un élément. Vous pouvez spécifier les coordonnées locales absolues d’une zone de recherche dans la propriété Region.

Exclure un élément de la zone de recherche

La propriété Exclude regions of elements vous permet d’exclure de la zone de recherche la région correspondant à l’hypothèse trouvée d’un élément. Si aucune hypothèse n’est trouvée pour l’élément exclu, cette contrainte n’affecte pas la zone de recherche de l’élément.
Une exception se produit lorsque des contraintes supplémentaires sont spécifiées pour certaines des limites de l’hypothèse de l’élément exclu dans le volet relations avancées de pré-recherche. Dans ce cas, si l’élément exclu n’est pas trouvé, FlexiLayout Studio retire la zone de recherche rectangulaire de cet élément de la zone de recherche environnante. Pour plus d’informations sur les rectangles internes, consultez Fuzzy rectangle.

Reconnaître le texte vertical

Pour les éléments Devise, Date, Phone, Character String, Static Text et Paragraph, l’option Search through vertical text est disponible, ce qui permet de reconnaître le texte orienté aussi bien horizontalement que verticalement. Les options Clockwise oriented et Counterclockwise oriented activent ou désactivent respectivement la reconnaissance du texte vertical de haut en bas et de bas en haut. Elles sont activées par défaut et ne peuvent être désactivées que lorsque l’option Search through vertical text est sélectionnée.

Spécifier une zone de recherche par rapport à un autre élément

Une zone de recherche relative est définie dans l’onglet Relations de la boîte de dialogue Properties de l’élément. Pour définir une zone de recherche relative, spécifiez un élément de référence par rapport auquel les limites sont définies, puis spécifiez les relations de type Right of, Left of, Above et Below (propriété Relations). Vous pouvez spécifier un nombre quelconque de zones de recherche pour n’importe quel élément. Les limites d’une zone de recherche peuvent être spécifiées par rapport à différents éléments de référence. Si aucune zone de recherche relative n’a été spécifiée, le programme recherchera l’objet partout dans l’image. Chacune des contraintes de recherche spécifie un demi-plan. L’intersection du demi-plan et de l’image produit une partie rectangulaire de la zone de recherche. L’intersection de toutes les contraintes de recherche avec l’image produit la zone de recherche d’un élément. Les limites d’une zone de recherche peuvent être définies plus précisément à l’aide des propriétés Element boundary et Offset.

La propriété Element boundary

La propriété Element boundary spécifie une limite d’une zone de recherche par rapport à la limite supérieure, inférieure, gauche ou droite d’un élément. Par défaut, cette propriété est définie sur <whole>. Lors du calcul d’une zone de recherche relative, FlexiLayout Studio peut ne pas trouver l’élément de référence spécifié dans la propriété élément de référence. Le calcul diffère donc selon que l’élément de référence est trouvé ou non. Si l’élément de référence est facultatif et qu’aucun objet de l’image ne satisfait aux conditions spécifiées dans l’élément, une hypothèse nulle est formulée. La région de cette hypothèse nulle coïncide avec le rectangle qui englobe la zone de recherche de l’élément. Si l’élément de référence est trouvé, la région de l’hypothèse est construite à partir des régions des objets détectés qui participent à l’hypothèse, et se trouve à l’intérieur de la zone de recherche de l’élément. Lorsque l’élément de référence est trouvé et que Element boundary est défini sur <whole>, une contrainte Right of signifie « à droite de la limite droite de l’élément de référence », une contrainte Left of signifie « à gauche de la limite gauche de l’élément de référence », et ainsi de suite (c’est-à-dire par rapport à l’hypothèse). Lorsqu’aucune hypothèse n’est formulée pour l’élément de référence, l’élément peut se trouver n’importe où dans la zone de recherche de l’élément de référence, mais pas en dehors. Dans ce cas, une contrainte Right of signifie « à droite de toute zone dans laquelle les hypothèses pour l’élément de référence pourraient se trouver ». Mathématiquement, cela signifie « à droite de la limite gauche de la zone de recherche de l’élément de référence ». De même, une contrainte Left of signifie « à gauche de la limite droite », une contrainte Below signifie « sous la limite supérieure » et une contrainte Above signifie « au-dessus de la limite inférieure ». Si Element boundary est défini sur une valeur spécifique (Left, Top, Right ou Bottom), la zone de recherche est calculée par rapport à cette limite de l’hypothèse de l’élément de référence, que l’hypothèse ait été trouvée ou non. Par exemple, pour une hypothèse non trouvée, une contrainte Right of avec Element boundary défini sur Right signifie « à droite de la limite droite de la zone de recherche de l’élément de référence ».

La propriété Offset

La propriété Offset décale une limite de la zone de recherche d’une certaine distance. Une valeur Offset positive déplace la limite dans le même sens que celui spécifié par la propriété Relation. Une valeur Offset négative déplace la limite dans le sens opposé. Par exemple, un FlexiLayout contient un élément YourPlanetName de type Static Text qui repère le libellé du champ YOUR PLANET NAME: sur l’image. L’objectif est de trouver le texte saisi dans ce champ (dans ce cas, “MARS (satellite Phobos)”). Créez un élément Planet de type Character String et spécifiez une zone de recherche située à droite de l’élément YourPlanetName, c’est-à-dire définissez la propriété Element boundary sur Right of. La figure suivante montre l’emplacement de la zone de recherche :
Schéma de la zone de recherche située à droite de l'élément YourPlanetName
Déplacez la limite de la zone de recherche vers la droite, c’est-à-dire dans le même sens que la relation Right of. Pour ce faire, sélectionnez une valeur Offset positive, par exemple 200. La figure suivante montre le nouvel emplacement de la limite :
Schéma de la limite de la zone de recherche déplacée vers la droite par une valeur Offset positive
Déplacez maintenant la limite de la zone de recherche vers la gauche, c’est-à-dire dans le sens opposé à la relation Right of. Pour ce faire, sélectionnez une valeur Offset négative, par exemple -200. La figure suivante montre le nouvel emplacement de la limite :
Schéma de la limite de la zone de recherche déplacée vers la gauche par une valeur Offset négative

Sélectionnez l’élément situé le plus près d’un objet donné

La propriété Nearest indique à FlexiLayout Studio que, toutes choses égales par ailleurs, il doit rechercher une hypothèse située le plus près d’un élément ou d’un point donné sur l’image. Dans la propriété Nearest de l’élément, spécifiez l’élément, le point ou l’axe de coordonnées le plus proche.

Afficher une zone de recherche

Lorsque vous modifiez les propriétés d’une relation ou sélectionnez une relation dans le tableau Relations, la relation s’affiche dans la Fenêtre Image. Lorsque vous sélectionnez plusieurs relations, leur intersection est affichée. En mode Disposition de référence, vous pouvez également faire glisser directement dans la Fenêtre Image, à l’aide de la souris, la limite de décalage pour modifier la valeur de décalage. Lors de la mise en correspondance d’un FlexiLayout, FlexiLayout Studio calcule d’abord la zone de recherche de l’élément à l’aide de toutes les contraintes spécifiées. Il vérifie ensuite si les objets d’image situés dans la zone de recherche possèdent les mêmes propriétés que les éléments. Si la mise en correspondance du FlexiLayout trouve le mauvais objet, vous pouvez en comprendre la raison en examinant la zone de recherche de l’élément. Pour afficher la zone de recherche d’un élément après la mise en correspondance d’un FlexiLayout, cliquez avec le bouton droit sur l’hypothèse correspondant à l’élément et sélectionnez Afficher la zone de recherche dans le menu contextuel. La zone de recherche apparaît dans la Fenêtre Image.