Passer au contenu principal

Description

Représente une image modifiable dans ABBYY FlexiCapture. Cet objet étend l’interface IPictureObject.
Cet objet n’est pas disponible dans Web Verification Station pour vérifier les règles localement.

Méthodes

MéthodeDescriptionCouleurs d’image prises en charge
ApplyContourSmoother( params: IContourSmootherParams )Applique le filtre de lissage des contours à une image.Pour les images en niveaux de gris et en couleur
ApplyLocalContrastFilter( params: ILocalContrastParams )Applique le filtre de contraste non adaptatif à une image.Pour les images en niveaux de gris et en couleur
ApplyMultiscaleLocalContrastFilter()Applique le filtre de contraste adaptatif à une image. Utilisez cette méthode pour transformer une image en image numérisée.Pour les images en niveaux de gris et en couleur
ApplyShadowsHighlightsFilter( params: IShadowsHighlightsParams )Applique un rehaussement des ombres à une image.Pour les images en niveaux de gris et en couleur
ApplySigmaFilter()Supprime le bruit d’une image.Pour toutes les images
AutoCrop( [optional] type: string )Rogne automatiquement l’image. Les valeurs possibles du paramètre type sont Photo, Scan et Generic. La valeur par défaut est Generic.Pour toutes les images
Binarize( params: IBinarizationParams )Convertit les couleurs d’une image en noir et blanc. Possède un jeu de propriétés différent de la méthode ConvertToBW.Pour les images en gris et en couleur
ConvertToBW( [optional] threshold: int )Convertit une image en noir et blanc. Vous pouvez spécifier une valeur de seuil de luminosité. Les valeurs supérieures au seuil sont considérées comme blanches et les valeurs inférieures au seuil comme noires. La valeur du seuil de luminosité peut aller de 0 à 255.Pour toutes les images
CreateBinarizationParams(): IBinarizationParamsCrée un objet contenant les paramètres de la méthode Binarize.Pour tous les types d’images
CreateContourSmootherParams(): IContourSmootherParamsCrée un objet contenant les paramètres du lisseur de contours.Pour tous les types d’images
CreateLocalContrastFilterParams(): ILocalContrastParamsCrée un objet contenant les paramètres de l’opération de contraste. Les paramètres du filtre sont définis par défaut.Pour tous les types d’images
CreateShadowsHighlightsFilterParams(): IShadowsHighlightsParamsCrée un objet contenant les paramètres de l’action de modification d’un effet d’éclairage des ombres.Pour toutes les images
Crop( rect: string )Rogne l’image en dehors du rectangle spécifié.Pour toutes les images
CutOut( rect: string ): IEditablePictureObjectDécoupe le rectangle spécifié dans l’image et renvoie ce rectangle.Toutes les images
Deskew( [optional] byLines: bool, [optional] byBlackSquares: bool, [optional] byText: bool )Redresse l’image. L’inclinaison de l’image peut être corrigée à l’aide de lignes droites, de carrés noirs ou du texte. Par défaut, le paramètre byText est défini sur true.Toutes les images
Despeckle( [optional] garbageSize: int )Supprime le bruit des images en noir et blanc. Les taches jusqu’à la taille spécifiée sont supprimées. Si le paramètre garbageSize n’est pas spécifié, la taille est détectée automatiquement.Images en noir et blanc uniquement
Erase( rectangle: string, [optional] red: int, [optional] green: int, [optional] blue: int )Efface une zone de l’image. Vous pouvez spécifier la couleur utilisée pour effacer la zone. Par défaut, la couleur noire est utilisée.Pour toutes les images
FlipHorizontal()Retourne l’image horizontalement.Pour toutes les images
FlipVertical()Retourne l’image verticalement.Pour toutes les images
FreeScale( newWidth: int, newHeight: int, newResolution: int )Redimensionne la page en fonction des nouvelles valeurs.Pour toutes les images
Invert( [optional] rectString: string )Inverse l’image. Vous pouvez spécifier une string contenant les coordonnées du rectangle à inverser.Pour toutes les images
NewRectsArray(): IRectsCrée une nouvelle collection de rectangles. Renvoie un objet IRects.Uniquement pour les images en couleur
RemoveMotionBlur()Supprime le flou provoqué par le mouvement du document, de l’appareil photo ou du scanner pendant la numérisation.Pour toutes les images
RemoveStamps( color: TColorToFilter, rects: IRects )Supprime les tampons en couleur et les autres marques d’une couleur spécifiée d’une image. Pour plus d’informations, voir Supprimer les tampons en couleur d’une image.Uniquement pour les images en couleur
RemoveStampsExt( colorsToFilter: string )Supprime les tampons colorés et autres marques d’une image à l’aide d’un algorithme amélioré permettant de supprimer un plus grand nombre de couleurs. Il s’agit de la méthode recommandée. Pour plus d’informations, voir Supprimer d’autres couleurs de tampon.Uniquement pour les images couleur
Rotate( angle: int )Fait pivoter l’image dans le sens des aiguilles d’une montre jusqu’à l’angle spécifié.Pour toutes les images
Scale( ratio: int )Étire ou compresse l’image par rapport à la taille de référence de 100 %. La méthode s’applique uniquement à la taille en pixels de l’image. La taille physique de l’image reste inchangée.Pour toutes les images
Le paramètre rect passé aux méthodes CutOut et Crop est une string au format "[left, top, right, bottom]". Pour obtenir cette chaîne, appelez la méthode ToString de n’importe quel objet IRect ou utilisez la méthode Rect de IFlexiCaptureTools (FCTools).

Supprimer les tampons colorés d’une image

La méthode RemoveStamps supprime les tampons colorés et les autres marques d’une couleur spécifiée dans une image. Cette méthode fonctionne uniquement sur des images en couleur.
ParamètreTypeDescription
colorTColorToFilterLa couleur des tampons à supprimer.
rectsIRectsLa collection de rectangles correspondant aux tampons à supprimer.
L’exemple de script suivant pour un événement Sur commande de l’utilisateur supprime les tampons rouges de toutes les pages. La recherche de tampons s’effectue sur toute la surface de la page.
MainWindow.TaskWindow.OpenDocument( MainWindow.TaskWindow.EditorWindow.Document );
foreach (IPage page in MainWindow.TaskWindow.EditorWindow.Document.Pages)
{
    if (page.Picture.IsColor)
    {
        IEditablePictureObject editablePicture = page.Picture.CreateEditableCopy();
        IRects rects = editablePicture.NewRectsArray();
        rects.AddRect(0, 0, editablePicture.Width - 1, editablePicture.Height - 1); // toute la page
        editablePicture.RemoveStamps(TColorToFilter.CTF_Red, rects);
        page.ReplaceImage(editablePicture);
    }
}

Supprimer des couleurs de tampon supplémentaires

La méthode RemoveStampsExt supprime sur une image les tampons colorés et autres marques d’une couleur spécifiée. Elle est similaire à RemoveStamps, mais utilise un algorithme amélioré qui prend en charge un plus grand nombre de couleurs. C’est la méthode recommandée pour supprimer les tampons. Le paramètre colorsToFilter (string) définit la couleur des tampons à supprimer :
  • Accepte les valeurs string suivantes : Red, Green, Blue, Yellow, Orange, LightBlue et Purple (sans distinction entre majuscules et minuscules).
  • Vous pouvez spécifier plusieurs valeurs séparées par des virgules, par exemple "Red, Green".
  • Vous pouvez spécifier une string vide ("") pour laisser le programme sélectionner automatiquement la couleur de tampon appropriée. Le programme supprime tous les tampons qu’il détecte sur une image et dont la couleur correspond à l’une des valeurs autorisées.
L’exemple de script suivant pour un événement Sur commande de l’utilisateur supprime les tampons rouges et verts de toutes les pages :
foreach (IPage page in Document.Pages)
{
    if (page.Picture.IsColor)
    {
        IPictureObject picture = page.Picture;
        IEditablePictureObject editablePicture = picture.CreateEditableCopy();
        editablePicture.RemoveStampsExt("Red, Green");
        page.ReplaceImage(editablePicture);
    }
}

Exemples pour les étapes de traitement personnalisées

Ces scripts montrent comment utiliser les méthodes de IEditablePictureObject dans des étapes de traitement personnalisées.

Appliquer un filtre de contraste local

Ce script crée un objet avec des paramètres pour le filtre de contraste local, définit les paramètres manuellement et applique le filtre à une image.
foreach( IPage page in Document.Pages )
{
    IPictureObject picture = page.Picture;
    IEditablePictureObject editablePicture = picture.CreateEditableCopy();
    // Création d'un objet avec des paramètres (paramètres définis par défaut)
    ILocalContrastParams localContrastParams = editablePicture.CreateLocalContrastFilterParams();
    // Définition des paramètres dont les valeurs seront modifiées par la suite
    localContrastParams.Radius = 7;
    localContrastParams.NoiseLevel = 200;
    // Application d'un filtre à l'image
    editablePicture.ApplyLocalContrastFilter( localContrastParams );
    // Remplacement de l'image d'une page par l'image modifiée
    page.ReplaceImage( editablePicture );
}

Binariser une image avec des paramètres personnalisés

Ce script crée un objet contenant des paramètres pour la méthode Binarize et convertit l’image en noir et blanc à l’aide des paramètres définis.
foreach ( IPage page in Document.Pages )
{
    IPictureObject picture = page.Picture;
    IEditablePictureObject editablePicture = picture.CreateEditableCopy();
    // Création d'un objet avec des paramètres (les paramètres sont définis par défaut)
    IBinarizationParams binarizationParams =  editablePicture.CreateBinarizationParams();
    // Définition du paramètre true ou false
    binarizationParams.SmoothTexture = false;
    editablePicture.Binarize( binarizationParams );
    page.ReplaceImage( editablePicture );
}

Améliorer les pages sélectionnées à partir de la Verification Station

Ce script augmente le contraste, supprime le bruit numérique, applique le rognage automatique et réduit le flou sur les pages sélectionnées. Le script est exécuté par un opérateur de la Verification Station.
foreach( IPageItem pageItem in MainWindow.Selection.PageItems) {
    pageItem.TaskWindow.CloseEditorWindow();
    pageItem.TaskWindow.OpenDocument(  pageItem.DocumentItem.Document );
    IPage page = pageItem.Page;
    IEditablePictureObject editablePicture = page.Picture.CreateEditableCopy();
    // Applique les transformations d'image
    editablePicture.AutoCrop();
    editablePicture.ApplySigmaFilter();
    editablePicture.ApplyMultiscaleLocalContrastFilter();
    editablePicture.RemoveMotionBlur();
    // Remplace l'image du document original par l'image modifiée
    page.ReplaceImage( editablePicture );
    pageItem.TaskWindow.CloseDocument(  pageItem.DocumentItem.Document );
}