Plateforme Level Extreme
Abonnement
Profil corporatif
Produits & Services
Support
Légal
English
Code to create a contrasting color
Message
Information générale
Forum:
Visual FoxPro
Catégorie:
Codage, syntaxe et commandes
Versions des environnements
Visual FoxPro:
VFP 9 SP2
OS:
Windows XP SP2
Network:
Windows 2003 Server
Database:
Visual FoxPro
Divers
Thread ID:
01486509
Message ID:
01486971
Vues:
44
>>>>I have an app where I am cropping images. Everything works great thanks to GdiPlusX. I create a shape object with MouseDown / MouseMove to mark the crop area. My question is how to get the contrasting color so the shape border will show against all the different colors in the image. I know I can get the color at the mouse down point but how do I get a light color if the image is dark, etc. I assume this is an easy one if you know what you are doing.
>>>
>>>What if you use XOR operation to draw the selection box border?
>>
>>
>>I looked at that but how would I use it. I have one value; the current color. What would be the 2nd value?
>
>Try
>
>lnNewColor = BITXOR(lnCurrentColor, 0xFFFFFFFF)
>
It turns out that since an image can have any color at any point that I needed to check around the area of the crop box. I am now looking at the starting 4 corners and changing the color based on the majority color. Also I found that white is best overall for the box outline so I am testing for the brightness at the 4 corners. If it is very bright then I use black. As Dragan pointed out, using the contrasting color does not work if you have a mid range color. It would be wonderful if I could change the color at each point on the shape border but I fear that is beyond the capabilities of VFP, at least without drawing and re-drawing every point individually.

Thanks to everyone for the suggestions.
Beer is proof that God loves man, and wants him to be happy. - Benjamin Franklin
John J. Henn
Précédent
Répondre
Fil
Voir

Click here to load this message in the networking platform