SaveImageAs
Enregistre un nouvel exemplaire de l'image en permet d'ajuster son type, sa profondeur de couleur et sa compression.
Syntaxe
bool SaveImageAs ()
Paramètres
NewFileType : chaîne. Type de fichier de la nouvelle image. Types acceptés : TIF, JPG, BMP, PNG.
- 0 : conserve la profondeur de couleur de l'image source. Si ce paramètre est vide, c'est cette valeur 0 qui est utilisée par défaut. Si l'image source est une image couleur 32 bits, la profondeur maximum pour l'image enregistrée est de 24 bits par pixel.
- 1, 8, 24 : nouvelle profondeur de couleur (bits par pixel) de l'image enregistrée.
- Optimisé : palette de couleurs optimisées pour l'image. Si ce paramètre n'est pas spécifié, c'est cette valeur qui est utilisée par défaut.
- Fixe : palette de couleurs fixe.
- Gris : palette de niveaux de gris.
- Binariser1 : conversion optimisée pour retirer les informations d'arrière-plan et laisser les informations de premier plan, comme le texte sombre. C'est généralement la meilleure option pour convertir une image ou une photo en noir et blanc pour une reconnaissance de texte. Aucun tramage n'est effectué. Le résultat est une image en noir et blanc. Si ce paramètre n'est pas spécifié, c'est cette méthode qui est utilisée par défaut pour enregistrer une image 1 bit.
- Binariser2 : Similaire à Binariser1 mais peut être légèrement plus rapide. Aucun tramage n'est effectué. Le résultat est une image en noir et blanc.
- FS : utilise l'algorithme de Floyd-Steinberg pour tramer une image couleur en noir et blanc. N'utilisez pas cette option si l'image doit ensuite faire l'objet d'une reconnaissance. Le tramage ne doit être utilisé que pour laisser un aspect "ombré" ou si l'image ne doit pas faire l'objet d'une reconnaissance.
- Aucun : aucun tramage n'est effectué. Cette option est similaire aux méthodes Binariser mais peut ne pas donner des résultats aussi bons que Binariser1 pour la reconnaissance de texte. Contrairement à Binariser, elle n'est pas limitée aux images en noir et blanc.
- Optimisé : c'est le moteur d'image qui détermine comment tramer l'image. Une image tramée est une image en noir et blanc qui simule des niveaux de gris, comme un journal. Cette méthode est recommandée pour convertir une photo en noir et blanc quand on veut conserver l'image photographique. C'est la valeur par défaut si la profondeur de couleur cible est supérieure à 1. Si vous effectuez une reconnaissance sur l'image, utilisez plutôt Binariser1 pour convertir l'image en noir et blanc ou "Aucun" si vous descendez à 24 ou 8 bits par pixel.
- Ordonné : autre méthode pour convertir une image couleur en photo tramée en noir et blanc. Encore une fois, cette option est déconseillée si l'image doit faire ensuite l'objet d'une reconnaissance.
BackupSuffix : chaîne. Lorsque l'image en cours est enregistrée, l'image d'origine est conservée. Si la nouvelle image enregistrée a le même nom que l'image source d'origine, l'image source est enregistrée en ajoutant un suffixe au nom. Par défaut, c'est le suffixe ".original" qui est ajouté au nom de fichier. Par exemple, si le nom de l'image source est "TM000001.tif", l'image d'origine est enregistrée sous le nom "TM000001.original.tif" et la nouvelle image sous le nom "TM000001.tif". Ce paramètre permet de changer le suffixe. Par exemple, si vous indiquez la valeur ".backup", l'image d'origine est enregistrée sous le nom "TM000001.backup.tif". Si l'image source et la nouvelle image sont de types différents, comme "TM000001.jpg" et "TM000001.TIF", le nom de l'image source n'est pas en conflit avec celui de la nouvelle image et n'est pas modifié. Si vous souhaitez quand même changer le nom de l'image source dans ce cas, vous pouvez la renommer avec les actions FileIO.
DeleteOriginal : chaîne. "True" ou "False". Si ce paramètre est à "True", l'image d'origine n'est pas enregistrée dans le lot. S'il est à "False", elle est conservée et reste disponible pour une utilisation ultérieure dans le lot, comme un archivage. Si ce paramètre n'est pas spécifié, c'est la valeur "False" qui est utilisée par défaut et l'image d'origine est enregistrée.
La notation des paramètres intelligents (SmartParameters) est acceptée pour l'ensemble des paramètres.
Renvoie
True si l'opération aboutit ; False en cas d'erreur.
Niveau
Niveau page uniquement ; la page doit faire référence à un fichier image d'une seule page valide.
Détails
- Format d'image
- Type de compression
- Profondeur de couleur / bits par pixel
Formats d'entrée : BMP, DIB, EMF, GIF, JPEG, JPEG2000, PNG, TIF, WMF.
Formats de sortie : BMP, PNG, JPEG, TIF.
L'image en cours peut être enregistrée en conservant son type de fichier et en changeant uniquement sa compression ou sa profondeur de couleur. Par exemple, un TIF avec compression JPEG peut être ré-enregistré en TIF avec compression LZW. L'image en cours peut également être convertie dans un autre type de fichier, comme d'une image JPEG en une image TIFF.
L'image source peut avoir une profondeur de couleur allant jusqu'à 32 bits par pixel. Elle peut être enregistrée avec une profondeur de couleur allant jusqu'à 24 bits per pixel. Certaines actions Datacap ont des exigences de profondeur de couleur spécifiques ; cette action permet d'ajuster l'image en cours à une autre profondeur de couleur en fonction de ce qui est requis par les actions et les jeux de règles suivants.
Si le type de fichier de l'image finale est le même que celui de l'image source, l'action commence par sauvegarder l'image d'origine en lui donnant un nom différent par l'ajout du suffixe ".original". Par exemple, si le nom du fichier source est "TM000001.tif" et que l'image est enregistrée en TIF, le fichier d'origine est enregistré sous le nom "TM000001.orignal.tif" et "TM000001.tif" devient le nom du fichier modifié.
Le fichier image associé à l'objet page en cours peut être converti dans les types de fichier BMP, PNG, TIF et JPEG. Les images BMP (Bitmap) sont toujours enregistrées sans compression, ce qui peut les rendre volumineuses. Le format PNG (Portable Network Graphics) utilise une compression sans perte qui fonctionne sur les images 1 bit, 8 bits et 24 bits.
Pour l'enregistrement au format TIF ou JPG, les actions SaveImageSettingsTIFF et SaveImageSettingsJPEG peuvent être appelées auparavant pour ajuster le format de fichier utilisé. Par exemple, la compression de fichier par défaut pour les images TIF est la compression LZW. En appelant d'abord SaveImageSettingsTIFF, il est possible de la remplacer pour l'enregistrement d'un fichier en TIFF par l'action SaveImageAs. Par exemple, si vous convertissez des images en noir et blanc, vous pouvez spécifier la compression de Groupe 3 ou de Groupe 4 car elle est efficace et sans perte pour les images en noir et blanc.
Si une application ingère des images JPEG ou des images TIF avec compression JPEG et que ces images doivent faire l'objet d'une reconnaissance, il est fortement recommandé de les convertir à un format sans perte, comme le format TIF avec compression LZW, immédiatement après leur ingestion dans un lot. Les actions qui suivent peuvent alors opérer sur la nouvelle image TIF utilisant une compression sans perte. La version d'origine de l'image reste disponible au besoin pour affichage dans un panneau de vérification ou exportation à la fin du traitement du lot. La compression JPEG est destinée aux photographies, et non aux images contenant du texte à reconnaître. Elle rend floue les lignes nettes des lettres, réduisant la qualité de la reconnaissance. Lorsque l'image est ensuite manipulée, pour une amélioration, une rotation, etc., et réenregistrée avec la compression JPEG, la qualité se dégrade encore à chaque enregistrement, même si la compression est réglée sur une qualité élevée.
Il peut être utile d'utiliser l'action SaveImageInformation avec cette action. SaveImageInformation lit les attributs de l'image et enregistre les valeurs dans le DCO. Les règles d'une application peuvent être configurées pour agir en fonction de ces informations. Par exemple, si une image a une profondeur de couleur supérieure à 24 bits par pixel, elles peuvent appeler SaveImageAs pour la réduire.
L'action SaveImageInformation peut également être utilisée pour obtenir la compression utilisée dans l'image. Par exemple, les règles peuvent être organisées pour contrôler le type de compression de l'image en cours ; s'il s'agit de la compression JPEG, elles peuvent appeler SaveImageAs pour enregistrer l'image avec une compression sans perte et, si l'image est déjà en compression sans perte, la laisser telle quelle.
Exemple 1 :
SaveImageInformation("","","","","","","","@X.ImgCompression")
rrCompareCase("Jpeg", "@X.ImgCompression", "False")
SaveImageAsSettingsTIFF("LZW")
SaveImageAs("TIF","0","","","","")Cet exemple vérifie si l'image TIFF en cours utilise la compression JPEG.
Si c'est le cas, il configure la compression LZW pour les images TIF enregistrées
avec l'action SaveImageAsSettingsTIFF.
L'exemple est présenté dans la même règle que la règle pour SaveImageAs.
Si les paramètres doivent être les mêmes pour toutes les pages,
il est plus efficace de mettre SaveImageAsSettingsTIFF dans une règle associée à l'événement d'ouverture du lot.
Cela permet de n'appeler l'action qu'une seule fois au lieu de l'appeler pour chaque page.L'action SaveImageAs convertit l'image de la page en cours en image TIF avec compression LZW. Que l'image source soit une image TIF ou d'un autre type comme JPEG ou PNG n'a pas d'importance. La valeur de paramètre 0 conserve la profondeur de couleur de l'image d'origine. Si l'image est en noir et blanc, elle reste une image noir et blanc 1 bit. Si elle est en couleur 24 bits, elle est enregistrée en couleur 24 bits. Cet exemple est une bonne manière de convertir les images pouvant être enregistrées avec une compression avec pertes, comme le JPEG, en une compression sans perte pour limiter la dégradation ultérieure de la qualité.
Exemple 2 :
SaveImageAsSettingsJPEG("100","False","True")
SaveImageAs("JPEG","0","Optimized","Optimized",".Old","False")Cet exemple convertit l'image en cours en image JPEG.
Bien que le paramètre de profondeur de couleur soit réglé sur "0",
c'est-à-dire conserver la profondeur de couleur d'origine,
les images JPEG ne peuvent être enregistrées qu'en niveaux de gris 8 bits ou en couleur 24 bits.
Si l'image source est une image 1 bit, sa profondeur de couleur est augmentée.
Même si elle a toujours l'air d'être en noir et blanc, elle est passée en couleur 24 bits.
Cet exemple utilise également une extension personnalisée, ".Old",
pour sauvegarder le nom de fichier d'origine pour le cas où le nouveau nom de fichier et l'ancien seraient identiques.Ici encore, bien que cet exemple montre l'action SaveImageAsSettingsJPEG appelée dans la même fonction de règle juste avant SaveImageAs, si toutes les pages doivent avoir les mêmes paramètres, cette action peut être appelée au niveau document ou lot et le réglage restera en vigueur pendant le reste du profil de tâche en cours. L'appel de cette action à un niveau plus élevé évite de devoir l'appeler pour chaque objet page. En revanche si chaque objet page peut avoir besoin de paramètres différents lors de son enregistrement, il est nécessaire d'appeler l'action pour chacun d'eux.
Pour le traitement de photos non destinées à une reconnaissance de texte, il est recommandé d'enregistrer au format JPEG ou TIF avec compression JPEG. Pour une reconnaissance de texte sur une image, ou des améliorations d'image, il est recommandé de commencer par convertir l'image dans une compression sans perte et de ne pas utiliser le format d'image JPEG.
Exemple 3 :
rrSet("Group4", "@X.Compression")
rrSet("TIF", "@X.NewFileType")
rrSet("True", "@X.DeleteOriginal")
SaveImageAsSettingsTIFF(@X.Compression)
SaveImageAs("@X,NewFileType","1","","","","@X.DeleteOriginal")Cet autre exemple
convertit l'image de la page en cours en TIF quel que soit le format origine.
Il convertit également l'image en noir et blanc avec la compression de télécopie Groupe 4,
qui est une compression noir et blanc efficace et sans perte.Cet exemple montre l'utilisation de paramètres intelligents pour transmettre des valeurs aux actions. Il transmet à l'action une variable, NewFiletype, en paramètre intelligent à l'exécution. La valeur de la variable "NewFileType" sera extraite et utilisée comme paramètre d'entrée. Dans une application réaliste, une règle ou une action préalable mettrait probablement la valeur dans la variable DCO "NewFileType" avant l'appel de l'action. Par exemple, la valeur pourrait être définie au préalable dans un champ ou provenir de données reconnues placées dans un champ, et une référence au champ serait transmise en paramètre d'entrée à l'action, qui utiliserait la valeur courante du champ à l'exécution. Une autre approche possible est de configurer les valeurs dans le DCO de configuration, qui peut être défini dans Datacap Studio, afin qu'elles pré-existent pour l'objet ; les actions peuvent ensuite les extraire à l'exécution.