Bonjour,
je suis en train de développer une application qui manipule des images TIF bi-couleur (noir et blanc), et j'ai besoin d'une fonction qui inverse la couleur d'une image donnée si elle était noire.
Voici mon code que j'utilise en ce moment:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
        public static void CheckColor(string filePath)
        {
            FreeImageBitmap fibit = new FreeImageBitmap(filePath);
            int numFrames = fibit.FrameCount;
            for (int i = 0; i < numFrames; i++)
            {
                fibit.SelectActiveFrame(i);
                if(fibit.ColorType != FREE_IMAGE_COLOR_TYPE.FIC_MINISWHITE)
                {
                    fibit.Invert();
                    fibit.Save(fichePath);
                }
            }
            fibit.Dispose();
        }
Mais apparament, il ne fonctionne pas bien, vu que le résultat n'est pas celui que j'ai souhaité : une image noire n'est pas transformée en blanche meme si j'y applique la méthode Invert() (voir le code)