ABBYY FineReader Engine 12 - Partie 3 : la méthode UpdateOptions de l'objet DocumentViewerS

ABBYY

Pour réagir au contenu de ce tutoriel, un espace de dialogue vous est proposé sur le forum. Commentez

- Titre : ABBYY FineReader Engine 12 - Partie 3 : la méthode UpdateOptions de l'objet DocumentViewerS

- Auteur : ABBYY

- Parution : 15 octobre 2020

- Licence : Copyright ® 2020 ABBYY. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Voir également :

- ABBYY FineReader Engine 12 - Guide de l'administrateur du système : descriptions étape par étape des scénarios d'installation de base

- ABBY FineReader Engine 12Guide de l'administrateur du systèmePartie 2 : des références plus détaillées pour la gestion des licences

- ABBYY ® FlexiCapture® SDK - Comment migrer à partir du moteur FlexiCapture

Sommaire

- I. Méthode UpdateOptions de l'objet DocumentViewer

- I-A. Syntaxe

- I-B. Valeurs de retour

- II. Objet TextEditor (Interface ItextEditor)

- III. Propriétés

- IV. Méthodes

- V. Échantillons

- VI. Commandes de l'éditeur de texte

- VII. Remerciements Developpez.com

I - Méthode UpdateOptions de l'objet DocumentViewer

Cette méthode met à jour les paramètres spécifiés dans la boîte de dialogue Options de Document Viewer. Vous devrez peut-être appeler cette méthode, si les options ont été modifiées dans un autre composant visuel, pour mettre à jour les options de Document Viewer à l'état actuel.

Remarque : la boîte de dialogue Options peut être affichée si la commande MI_Options est appelée dans Image Viewer, Zoom Viewer, Text Editor ou Document Viewer, si le bouton Options est cliqué dans la boîte de dialogue Enregistrer sous de Document Viewer, ou si Paramètres > Options est cliqué dans Text Validator.

I-A - Syntaxe

- C++

HRESULT UpdateOptions();

- C#

void UpdateOptions();

- Visual Basic .NET

Sub UpdateOptions()

I-B - Valeurs de retour

Cette méthode n'a pas de valeurs de retour spécifiques. Elle renvoie les valeurs de retour standard des fonctions du moteur ABBYY FineReader.

II - Objet TextEditor (Interface ItextEditor)

L'objet TextEditor est un contrôle ActiveX qui vous permet de visualiser et de modifier le texte reconnu sur une page de document. Une page est connectée au composant via la propriété FRPage.

Le composant Text Editor ressemble à ceci :

Vous pouvez modifier l'apparence du composant via ses propriétés. Par exemple, vous pouvez ajouter des boutons à sa barre d'outils et les en retirer via la propriété Toolbar, ou modifier le menu contextuel du composant via la propriété Commands. Voir Personnalisation du menu contextuel et de la barre d'outils d'un composant visuel pour plus de détails.

Les informations relatives à l'édition du texte reconnu sont communiquées par des interfaces sortantes spéciales. Ces interfaces sont ITextEditorEvents (pour C++) et une interface de sortie DITextEditorEvents (pour Visual Basic). Il convient de noter que les utilisateurs de Visual Basic ne doivent pas se soucier des détails de la mise en œuvre des interfaces d'événements, car cette plateforme de développement fournit des moyens faciles de les manipuler. Cet objet peut être déclaré WithEvents en Visual Basic.

Pour l'utilisateur C++, cela signifie qu'il prend en charge l'interface IConnectionPointContainer. Pour recevoir des événements de notification, un utilisateur C++ doit créer un objet dérivé de l'interface ITextEditorEvents, puis établir la connexion entre cet objet et la source d'événements mise en œuvre dans l'objet TextEditor par des moyens COM standard.

Le composant Text Editor peut être connecté au composant Component Synchronizer, auquel cas tous les événements de Text Editor seront automatiquement transmis aux autres composants connectés au Synchronizer et l'ensemble de l'application fonctionnera de manière synchrone.

III - Propriétés

Nom

Type

Description

BottomPaneEnabled

VARIANT_BOOL

Indique si le volet inférieur de l'éditeur de texte est activé. Si cette propriété est FALSE, le volet inférieur n'est pas affiché.
Par défaut, la valeur est TRUE.

CaptionPaneEnabled

VARIANT_BOOL

Indique si le volet de légende de l'éditeur de texte est activé. Si cette propriété est FALSE, le sous-titre n'est pas affiché.
Par défaut, la valeur est TRUE.

ContextMenuEnabled

VARIANT_BOOL

Indique si le menu contextuel de l'éditeur de texte est activé. Si cette propriété est FALSE, le menu contextuel n'est jamais affiché.
Par défaut, la valeur est TRUE.

Commands

Commands, read-only

Permet d'accéder aux commandes disponibles dans l'éditeur de texte. Voir la liste des commandes disponibles dans l'éditeur de texte.

CursorPosition

EditorPosition

Précise la position du curseur sur la page.

FRPage

FRPage

Représente la page du document connectée à l'éditeur de texte.

KeepTextAndBackgroundColor

VARIANT_BOOL

Spécifie si les couleurs du texte et du fond doivent être conservées dans l'éditeur de texte.
Par défaut, la valeur de cette propriété est TRUE.

Locked

VARIANT_BOOL

Indique si l'éditeur de texte est verrouillé.
Cette propriété est utile dans les situations suivantes :
- l'opération d'analyse, de reconnaissance, de synthèse ou d'exportation est appelée depuis l'API du moteur FineReader (pas depuis Visual Components),
ou
- votre application reçoit des notifications de certains événements (par exemple de l'objet FRDocument) et traite les messages Windows de Visual Components dans ces gestionnaires d'événements.
Dans ce cas, nous vous recommandons de régler cette propriété sur TRUE avant l'analyse, la reconnaissance, la synthèse ou l'exportation, et de la régler sur FALSE après la fin de l'opération. Dans ce cas, le document ne peut pas être altéré à partir de l'éditeur de texte.
Par défaut, la valeur est FALSE.

Mode

TextEditorModeEnum

Spécifie l'un des modes de visualisation du document.
Par défaut, la valeur est TEM_ExactCopy.

PopupMenu

PopupMenu, read-only

Permet d'accéder aux paramètres du menu contextuel.

SettingsPath

BSTR

Spécifie le chemin d'accès au dossier qui contient les fichiers avec les paramètres de l'éditeur de texte. Les autres composants visuels ont la même propriété. Chaque composant visuel doit utiliser son propre dossier avec les paramètres.
La valeur de cette propriété est construite à partir du chemin d'accès au dossier, dans lequel ABBYY FineReader Engine stocke les données spécifiques à l'utilisateur, et du nom de son sous-dossier. Par défaut, le dossier contenant les données spécifiques à l'utilisateur est le dossier de données de FineReader Engine. Il peut être modifié lors de l'initialisation de FineReader Engine (via la fonction InitializeEngine, ou via la méthode IEngineLoader::InitializeEngine). Le nom par défaut du sous-dossier est un GUID arbitraire. Pour changer le nom du sous-dossier, vous devez spécifier le nouveau nom dans les propriétés du composant dans Visual Studio au moment de la conception. Si vous essayez de spécifier la valeur de la propriété au moment de l'exécution, cette valeur est ignorée.
Si vous ajoutez le composant à un formulaire dans Visual Studio au moment de la conception, la valeur de la propriété est définie soit automatiquement avec la valeur par défaut, soit manuellement avec une valeur personnalisée. Dans les deux cas, la valeur est définie au moment de la conception. Si, pour une raison quelconque, la valeur de la propriété n'est pas définie au moment de la conception (par exemple si vous générez le composant dynamiquement au moment de l'exécution), le composant crée un nouveau dossier avec les paramètres à chaque fois que le composant est initialisé. Pour éviter la multiplication des dossiers, vous devez supprimer le dossier des paramètres créé après la désinitialisation du composant. Dans ce cas, vous ne pouvez utiliser que les paramètres par défaut du composant et vous ne pouvez pas sauvegarder les paramètres entre les sessions.

ShowPictures

VARIANT_BOOL

Spécifie si les images doivent être affichées dans l'éditeur de texte.
Par défaut, la valeur de cette propriété est TRUE.

ShowRunningTitles

VARIANT_BOOL

Spécifie si les titres courants doivent être affichés dans l'éditeur de texte.
Par défaut, la valeur de cette propriété est TRUE

Nom

Type

Description

SynthesisParamsForDocument

SynthesisParamsForDocument

Spécifie les paramètres de synthèse par défaut pour un document.
Ces paramètres sont utilisés si l'éditeur de texte doit effectuer la synthèse d'un document (cela peut arriver si la structure logique d'un document devient incorrecte à cause de certaines opérations d'édition).
Note : Si l'éditeur de texte est connecté à Component Synchronizer, utilisez la propriété IComponentSynchronizer::ProcessingParams pour modifier les paramètres utilisés pour la synthèse de documents. Si vous modifiez ces paramètres via la propriété de l'éditeur de texte, des erreurs peuvent se produire.

SymbolRect

FRRectangle, read-only

Stocke les coordonnées du rectangle du personnage actuel en pixels. Les coordonnées sont relatives à l'image du document.

Title

BSTR

Précise le titre du composant de l'éditeur de texte.
Par défaut, il s'agit de « Texte ».

Toolbar

Toolbar, read-only

Permet d'accéder aux paramètres de la barre d'outils.

ViewScale

int

Spécifie l'échelle de la page de texte en points de pourcentage. Cette propriété peut également être définie par l'une des constantes ScaleTypes.
Par défaut, la valeur est ST_BestFit, ce qui signifie que le meilleur ajustement est automatiquement sélectionné.

VisibleDocumentArea

FRRectangle, read-only

Stocke les coordonnées de la zone visible du document en pixels.
Les coordonnées sont relatives à l'image du document.

WindowHandle

__int64, read-only

Renvoie la poignée de fenêtre de l'espace client.

IV - Méthodes

Nom

Description

ActivateOn

Active une position dans le bloc spécifié et la déplace en vue.

CenterOnDocumentPoint

Fait défiler la vue du texte de manière à ce que le point spécifié du document soit placé au centre de la vue.

DocumentToScreen

Convertit les coordonnées du point spécifié sur l'image du document en coordonnées d'écran.

GetSelection

Retourne le début et la fin de la position du curseur de la sélection.

Print

Imprime le texte reconnu.

SetSelection

Définit la sélection du texte sur une page.

ScreenToDocument

Convertit les coordonnées d'écran du point spécifié en coordonnées sur l'image du document.

ShowBlock

Déplace le bloc spécifié en vue (dans la mesure du possible). Cette méthode n'a de sens que si l'éditeur de texte est utilisé dans le mode TEM_ExactCopy.

ShowDocumentArea

Fait défiler la vue du texte afin que la zone du document avec les coordonnées spécifiées devienne visible (dans la mesure du possible).

UpdateOptions

Met à jour les paramètres spécifiés dans la boîte de dialogue Options de l'éditeur de texte. Vous pouvez avoir besoin d'appeler cette méthode, si les options ont été modifiées dans un autre composant visuel, pour mettre à jour les options de l'éditeur de texte à l'état actuel.

V - Échantillons

Ce composant est utilisé dans les exemples de code suivants : VisualComponents.

VI - Commandes de l'éditeur de texte

Vous trouverez ci-dessous la liste des commandes disponibles dans l'éditeur de texte. Les commandes peuvent être appelées :

- en sélectionnant un élément dans un menu contextuel ;

- en cliquant sur un bouton de la barre d'outils ;

- en appuyant sur une touche de raccourci ;

- en utilisant la méthode DoCommand de l'objet secondaire d'une composante.

Cependant, toutes ces méthodes ne sont pas disponibles pour chaque commande. La disponibilité de telle ou telle méthode d'appel est décrite dans le tableau ci-dessous : « + » signifie que la commande est disponible par défaut, « * » - la commande peut être ajoutée par le développeur. Voir aussi Personnalisation du menu contextuel et de la barre d'outils d'un composant visuel.

MenuItemEnum
constant

Description

Menu contextuel

Barre d'outils

DoCommand

Touche de raccourci

Autres

MI_AddToDictionary

Ajoute le mot sélectionné à un dictionnaire d'orthographe.

+

+

MI_AlignParagraphsLeft

Aligne les paragraphes sélectionnés avec la marge de gauche.

*

*

+

MI_AlignParagraphsRight

Aligne les paragraphes sélectionnés avec la marge de droite.

*

*

+

MenuItemEnumconstant

Description

Menu contextuel

Barre d'outils

DoCommand

Touche de raccourci

Autres

MI_CenterParagraphs

Centre les paragraphes sélectionnés

*

*

+

MI_CheckSpelling

Ouvre la boîte de dialogue Vérifier l'orthographe (le composant Text Validator), qui vous permet de vérifier le texte reconnu.

*

+

+

Ctrl+F7

MI_Copy

Copie le texte sélectionné dans le presse-papiers.

+

*

+

Ctrl+C or
Ctrl+Insert

MI_Cut

Supprime le texte sélectionné et le copie dans le presse-papiers.

+

*

+

Ctrl+X or
Shift+Del

MI_DeletePicture

Supprime l'image sélectionnée.

+

+

MI_EditFontStyles

Ouvre la boîte de dialogue de l'éditeur de style, qui vous permet de modifier le style et la mise en forme des polices.

*

*

+

MI_Find

Ouvre la boîte de dialogue Rechercher, qui vous permet de trouver la ligne de texte dans le texte reconnu.

*

*

+

Ctrl+F

MI_FindNext

Trouve la prochaine occurrence du texte spécifié.

*

*

+

F3

MI_FontBold

Rend la sélection grasse.

*

*

+

Ctrl+B

MI_FontItalic

Rend la sélection en italique.

*

*

+

Ctrl+I

MI_FontSubscript

Permet de réduire la taille de la police de l'indice de sélection.

*

*

+

Ctrl+=

MI_FontSuperscript

Permet de réduire la taille de la police de l'exposant de sélection.

*

*

+

Ctrl+Shift+
=

MI_FontUnderlined

Souligne la sélection avec une seule ligne.

*

*

+

Ctrl+U

MI_HyperlinkEdit

Ouvre la boîte de dialogue Modifier l'hyperlien, qui vous permet de modifier les hyperliens.

+

*

+

MI_HyperlinkOpen

Suit l'hyperlien.

+

+

MI_HyperlinkRemove

Supprime l'hyperlien.

+

+

MI_IgnoreAll

Ignorer toutes les occurrences du mot lors de la vérification de l'orthographe.

+

+

MI_JustifyParagraphs

Aligne les paragraphes sélectionnés sur les marges ou les retraits de gauche et de droite.

*

*

+

MI_MergeTableCells

Fusionne les cellules du tableau sélectionnées en une seule.

*

*

+

MI_MergeTableRows

Fusionne les lignes sélectionnées en une seule qui conserve les colonnes du tableau.

*

*

+

MI_NextError

Déplace la position du curseur sur le prochain caractère ou mot reconnu de façon incertaine dans le texte.

*

*

+

Shift+F4

MI_NextPage

*

*

+

Ctrl+Num+
or
Alt+Down
Arrow

Flèche vers le bas dans le coin inférieur droit de l'éditeur de texte

MI_Options

Affiche la boîte de dialogue Options, qui vous permet de spécifier différentes options d'affichage et d'enregistrement.

*

*

+

MI_Paste

Insère le texte copié dans le presse-papiers au point d'insertion.

+

*

+

Ctrl+V or
Shift+Insert

MI_PrevError

Déplace la position du curseur sur le caractère ou le mot précédent reconnu de façon incertaine dans le texte.

*

+

+

Shift+F5

MI_PrevPage

Affiche la page précédente.

*

*

+

Ctrl+Num
or
Alt+Up
Arrow

Flèche vers le haut dans le coin inférieur droit de l'éditeur de texte

MI_PrintText

Imprime le texte reconnu.

*

*

+

Ctrl+P

MI_Properties

Affiche les propriétés du caractère ou du texte sélectionné.

+

*

+

Alt+Enter

Bouton « Afficher les propriétés du texte » dans le coin inférieur gauche de l'éditeur de texte

MI_Redo

Annule la dernière action annulée.

*

*

+

Ctrl+Enter
or Ctrl+Y

MI_Replace

Ouvre la boîte de dialogue Remplacer, qui vous permet de remplacer la ligne de texte du texte reconnu par une autre ligne de texte.

*

*

+

Ctrl+H

MI_Scale_100

Sélectionne une valeur d'échelle de 100 % pour un texte.

+

+

MI_Scale_125

Sélectionne une valeur d'échelle de 125 % pour un texte.

+

+

MI_Scale_150

Sélectionne une valeur d'échelle de 150 % pour un texte.

+

+

MI_Scale_175

Sélectionne une valeur d'échelle de 175 % pour un texte.

+

+

MI_Scale_200

Sélectionne une valeur d'échelle de 200 % pour un texte.

+

+

MI_Scale_50

Sélectionne une valeur d'échelle de 50 % pour un texte.

+

+

MI_Scale_75

Sélectionne une valeur d'échelle de 75 % pour un texte.

+

+

MI_Scale_BestFit

Sélectionne la meilleure vue pour un texte.

+

+

Bouton « Best Fit » dans le panneau inférieur de l'éditeur de texte

MI_Scale_FitToHeight

Adapte la vue du texte à la hauteur.

+

+

Bouton « Ajuster à la hauteur » dans le panneau inférieur de l'éditeur de texte

MI_Scale_FitToWidth

Adapte la vue du texte à la largeur.

+

+

Bouton « Adapter à la largeur » dans le volet inférieur de l'éditeur de texte

MI_Scale_ZoomIn

Permet de zoomer dans le texte.

+

*

+

MI_Scale_ZoomOut

Effectue un zoom arrière sur le texte.

+

*

+

MI_SelectAll

Sélectionne tout le texte dans l'éditeur de texte.

+

+

Ctrl+A

MI_Separator

Ajoute un séparateur à la barre d'outils ou au menu contextuel.

+

*

MI_SetLanguage

Ouvre la boîte de dialogue Sélectionner la langue, qui vous permet de changer la langue de reconnaissance pour les mots reconnus de façon incertaine.

+

+

MI_ShowPictures

Affiche ou masque les images.

*

*

+

MI_ShowRunningTitles

Affiche ou masque les titres courants.

*

*

+

MI_ShowSpecials

Affiche les caractères non imprimables.

+

+

+

MI_ShowUncertain

Met en évidence les caractères reconnus de façon incertaine.

+

+

+

MI_SplitTableCells

Divise les cellules précédemment fusionnées.

*

*

+

MI_SubMenu

Ajoute un sous-menu au menu contextuel.

+

MI_Undo

Annule la dernière action.

*

*

+

Alt+Backsp
ace or
Ctrl+Z

MI_ViewDictionaries

Ouvre la boîte de dialogue Sélectionner un dictionnaire, qui vous permet de visualiser et de modifier les propriétés du dictionnaire.

*

*

+

Ctrl+Alt+D

MI_CustomCommand1

Vous permet de définir une commande personnalisée.

*

*

+

MI_CustomCommand2

Vous permet de définir une commande personnalisée.

*

*

+

MI_CustomCommand3

Vous permet de définir une commande personnalisée.

*

*

+

MI_CustomCommand4

Vous permet de définir une commande personnalisée.

*

*

+

MI_CustomCommand5

Vous permet de définir une commande personnalisée.

*

*

+

MI_CustomCommand6

Vous permet de définir une commande personnalisée.

*

*

+

MI_CustomCommand7

Vous permet de définir une commande personnalisée.

*

*

+

MI_CustomCommand8

Vous permet de définir une commande personnalisée.

*

*

+

MI_CustomCommand9

Vous permet de définir une commande personnalisée.

*

*

+

MI_CustomCommand10

Vous permet de définir une commande personnalisée.

*

*

+

VII - Remerciements Developpez.com

Nous tenons à remercier Malick pour la mise au gabarit et Claude Leloup pour la relecture orthographique.