> ## 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.

# Exclure des Regions d’une zone de recherche

> Supprimez les Regions indésirables de la zone de recherche d’un élément avec la fonction Exclude, illustrée sur des champs d’adresse dans le projet d’exemple Exclude.fsp.

Lors de la création d’un FlexiLayout, vous ne pouvez pas toujours définir les zones de recherche uniquement en fonction de la position relative, par exemple au-dessus, en dessous, à gauche ou à droite d’un autre objet. C’est particulièrement vrai lorsque la zone de recherche contient des objets indésirables, par exemple des objets qui ont pu être introduits lors de la numérisation. Ces objets ne doivent pas être inclus dans le bloc de reconnaissance ; ils doivent donc être exclus lors de la création de l’élément correspondant.

Le champ d’adresse dans les figures suivantes en est un bon exemple. Notez la position relative des libellés du champ **Address:** et **(Address)** (qui doivent être exclus de la reconnaissance) et de l’adresse elle-même (qui doit être reconnue).

<div id="how-the-exclude-function-removes-regions-from-a-search-area">
  ## Comment la fonction Exclude supprime des Regions d’une zone de recherche
</div>

La fonction `Exclude` exclut une Region de la zone de recherche d’un élément. La Region à exclure est spécifiée lors de l’appel de la fonction.

La Region exclue peut être l’une des suivantes :

* La Region d’une hypothèse (détectée ou non)
* Un rectangle ou un array de rectangles des éléments trouvés
* Une Region construite à partir des Regions d’objets faisant partie d’une hypothèse trouvée (voir la method `ExcludeSet`)

<Frame>
  <img src="https://mintcdn.com/abbyy/8aWHPAJyzWmTqglX/images/flexi-capture/fls/viz.gif?s=ba911b9543d2d903bcc7440f23232d54" alt="Schéma de deux exemples de champs d’adresse montrant les noms de champ Company, Address et (Address) à côté du texte de l’adresse qui doit être reconnu." width="585" height="170" data-path="images/flexi-capture/fls/viz.gif" />
</Frame>

<div id="the-excludefsp-sample-project">
  ## Le projet d’exemple `Exclude.fsp`
</div>

Le projet `Exclude.fsp` (dossier `%public%\ABBYY\FlexiCapture\12.0\Samples\FLS\Tips and Tricks\Exclude`) montre comment fonctionne la fonction `Exclude`.

Le projet comporte quatre pages :

* **Page 1** – Le champ d’adresse est écrit sur plusieurs lignes. Le nom **Address:** se trouve sur la première ligne ; nous ne pouvons donc pas dire que le champ de données recherché se trouve à droite ou en dessous du libellé du champ. Cependant, ce nom doit tout de même être exclu de la reconnaissance.
* **Page 2** – Le champ d’adresse n’a pas de nom.
* **Pages 3 and 4** – La ligne **(Address)** se trouve à l’intérieur du champ de données. Cependant, elle doit être exclue de la reconnaissance.

Sur toutes les pages, le champ d’adresse se trouve sous le champ contenant le nom de l’entreprise.

<div id="create-elements-for-the-field-names-and-the-address-field">
  ## Créer des éléments pour les noms des champs et le champ d’adresse
</div>

Commencez par créer un élément **Static Text**, nommez-le **CompanyHeader** et spécifiez sa valeur. Cet élément sert à détecter le libellé du champ.

Ensuite, créez un élément **Static Text** et nommez-le **AddressHeader**. Cet élément sert à détecter le libellé du champ. Spécifiez les valeurs de texte statique suivantes : **Address:|(Address)**, c’est-à-dire répertoriez toutes les variantes de cette ligne qui doivent être détectées, puis exclues de la reconnaissance dans le champ d’adresse.

Décrivez les contraintes de recherche pour ces lignes dans le champ **Relations** et indiquez qu’elles doivent être recherchées sous (**Below**) l’élément **CompanyHeader**.

<Note>
  L’élément du nom doit être créé avant l’élément du champ d’adresse, car la fonction `Exclude` permet uniquement de faire référence à des éléments situés plus haut dans l’arborescence FlexiLayout que l’élément actuel.
</Note>

Lancez la procédure de mise en correspondance FlexiLayout (**Associer FlexiLayout**) pour vous assurer que le libellé de l’adresse est trouvé sur toutes les pages où il apparaît.

Comme le champ d’adresse de cet exemple comporte plusieurs lignes, créez un élément **Paragraph** pour le rechercher. Nommez-le **Address** et, comme dans l’exemple précédent, indiquez qu’il doit être recherché sous (**Below**) l’élément **CompanyHeader**.

Une fois la procédure de mise en correspondance FlexiLayout exécutée, vous verrez que, sur les pages 1, 3 et 4, la ligne contenant le libellé a également été incluse dans le champ d’adresse.

<Frame>
  <img src="https://mintcdn.com/abbyy/lqYknuOmCa79141v/images/flexi-capture/fls/exclude.png?fit=max&auto=format&n=lqYknuOmCa79141v&q=85&s=e10b6efc3880a81082cb305888d07002" alt="Capture d’écran des résultats de la mise en correspondance FlexiLayout dans ABBYY FlexiLayout Studio pour le projet Exclude.fsp, montrant que le libellé du champ d’adresse est incorrectement inclus dans le champ Address détecté sur les pages 1, 3 et 4." width="630" height="522" data-path="images/flexi-capture/fls/exclude.png" />
</Frame>

<div id="exclude-the-field-name-from-the-address-search-area">
  ## Exclure le libellé du champ de la zone de recherche de l’élément Address
</div>

Revenez maintenant à la boîte de dialogue **Propriétés** de l’élément **Address** et cliquez sur l’onglet **Contraintes de recherche**. Cliquez sur **Ajouter...** à côté de la section **Exclure les Regions des éléments** et choisissez l’élément **AddressHeader** dans la liste.

| <img src="https://mintcdn.com/abbyy/r-nfa7jujx5b9gKX/images/flexi-capture/fls/select_elements_to_exclude.png?fit=max&auto=format&n=r-nfa7jujx5b9gKX&q=85&s=4bc4886f0f87ae6eae0b2d447e192b45" alt="Capture d’écran de la boîte de dialogue de sélection de l’élément à exclure avec l’élément AddressHeader sélectionné dans l’arborescence SearchElements." width="385" height="467" data-path="images/flexi-capture/fls/select_elements_to_exclude.png" /> | <img src="https://mintcdn.com/abbyy/r-nfa7jujx5b9gKX/images/flexi-capture/fls/prop_search_elements_adress.gif?s=40e05f2dc7bbaf2fa266aa2e51444d3f" alt="Capture d’écran de l’onglet Contraintes de recherche dans la boîte de dialogue Propriétés de SearchElements.Address, montrant SearchElements.AddressHeader dans la liste Exclure les Regions des éléments." width="427" height="476" data-path="images/flexi-capture/fls/prop_search_elements_adress.gif" /> |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |

Après avoir enregistré les propriétés de l’élément, exécutez de nouveau la procédure de mise en correspondance FlexiLayout. Vous verrez que la Region du bloc correspondant au champ d’adresse prend une forme non rectangulaire, car la Region du libellé du champ en a été découpée.

<Frame>
  <img src="https://mintcdn.com/abbyy/lqYknuOmCa79141v/images/flexi-capture/fls/exclude_adress.png?fit=max&auto=format&n=lqYknuOmCa79141v&q=85&s=94d4d98e36becda4f25053c2ec44e657" alt="Capture d’écran des résultats de la mise en correspondance de FlexiLayout dans ABBYY FlexiLayout Studio après exclusion de la Region AddressHeader, montrant le bloc d’adresse prenant une forme non rectangulaire parce que le nom du champ en a été découpé." width="630" height="522" data-path="images/flexi-capture/fls/exclude_adress.png" />
</Frame>

<Note>
  La section Exclure les Regions des éléments vous permet d’exclure de la zone de recherche de l’élément actif la Region d’une hypothèse trouvée pour un autre élément. Pour exclure une zone géométriquement plus complexe, ou pour détecter d’abord une Region puis l’exclure du processus de reconnaissance, utilisez les fonctions `Exclude`, `ExcludeRect` et `ExcludeSet` dans le champ **relations avancées de pré-recherche**.
</Note>

<Note>
  Par définition, la Region d’un bloc se compose de rectangles superposés ; par conséquent, toute ligne horizontale ne peut traverser la Region qu’une seule fois, c’est-à-dire qu’il ne peut pas y avoir de « dents » verticales saillantes.

  Par conséquent, si la ligne à exclure et les informations requises se trouvent au même niveau, ou à peu près, le libellé du champ ne peut pas être exclu au stade de la création du FlexiLayout. Dans ce cas, le nom peut être exclu après la reconnaissance dans FlexiCapture à l’aide de la règle « Substitute from the list ».
</Note>
