14 Nov 2007

Transparent background !


Le Compact Framework supporte la gestion de la transparence pour seulement une couleur. Mais, c’est déjà bien pratique et suffisant pour rendre transparent un fond noir rectangulaire par exemple.
The Compact Framework supports transparency color but for only one color. But it is already quite practical and sufficient to make transparent a black rectangular background for example.

Voici un petit exemple de code


Here is a small piece of code

1) Créer l’Image Attribute
1) Create the Image attribute
System.Drawing.Imaging.ImageAttributes attrib = new System.Drawing.Imaging.ImageAttributes();

2) Definissez la couleur de transparence (noir pour notre exemple)
2) Set the transparency color key (black for the example)
attrib.SetColorKey(Color.Black, Color.Black);

3) Dessinez l’image en utilisant l’image attribute
3) Draw the image using the image attribute
e.Graphics.DrawImage(backgroundIm, destRect, 0, 0, backgroundIm.Width, backgroundIm.Height, GraphicsUnit.Pixel, attrib);

Et voici le résulat avec un fond vert clair!
And here is the result with a light green background!


J'espère que cet exemple vous sera utile dans vos dev...
I hope this example will help you to your dev, see you later...

1 comment:

Greg said...

Same thing in .NET Micro Framework :

Bitmap Logo = (Resources.GetBitmap(Resources.BitmapResources.logo));

Logo.MakeTransparent(ColorUtility.ColorFromRGB(255, 0, 255));