Cette méthode supprime de l’image tous les objets en couleur des teintes spécifiées et les remplace par la couleur indiquée. Elle permet également d’enregistrer une image distincte contenant uniquement les objets extraits.
Cette méthode s’applique uniquement aux images en couleur.
HRESULT RemoveColorObjectsEx(
IIntsCollection* ColorHues,
int BackgroundColor,
IImage** ColorLayer
);
Image RemoveColorObjectsEx(
IIntsCollection ColorHues,
int BackgroundColor
);
Function RemoveColorObjectsEx( _
ColorHues As IIntsCollection, _
BackgroundColor As Integer _
) As Image
ColorHues
[in] Fait référence à l’objet IntsCollection, qui contient une collection des teintes des objets à filtrer, dans la représentation HSL. Vous pouvez transmettre null pour ce paramètre ; dans ce cas, tous les objets en couleur sont supprimés et seule l’image en gris subsiste.
Le nombre spécifiant une teinte doit être compris entre 0 et 255. La valeur 0 correspond au rouge, 43 — au jaune, 85 — au vert, 171 — au bleu, 213 — au violet.
BackgroundColor
[in] Spécifie la couleur qui doit remplacer les objets en couleur supprimés. Si vous transmettez -1 pour ce paramètre, la couleur d’arrière-plan est déterminée automatiquement.
ColorLayer
[out, retval] Pointeur vers la variable pointeur IImage* qui reçoit le pointeur d’interface de l’objet Image de sortie contenant les objets en couleur extraits.
Cette méthode ne comporte pas de valeurs de retour spécifiques. Elle renvoie les valeurs de retour standard des fonctions d’ABBYY FineReader Engine.
Cette méthode applique un filtrage des couleurs au plan couleur de l’ImageDocument. Toutes les autres pages sont supprimées de l’ImageDocument. Elles seront recréées à la demande.
Il existe également un mode de prétraitement spécial qui effectue le même type de filtrage des objets en couleur avant la reconnaissance de l’image et peut les restaurer automatiquement avant l’exportation : IPageProcessingParams::ProhibitColorObjectsAtProcessing. Choisissez le réglage le plus adapté à votre scénario.
ImageDocument