Ich möchte ein Bild über andere zeichnen, ohne seinen Hintergrund zu zeichnen. Das Bild, das ich zeichnen möchte, ist ein Stern. Ich möchte einige Sterne über ein Kartenbild legen..NET CF 2.0: Zeichnen Sie ein PNG über ein Bild mit Hintergrundtransparenz
Das Problem ist, dass das Bild des Sterns ein weißes backgroud hat und wenn ich über die Karte zeichne, erscheint der weiße Hintergrund.
Meine Methode um den Stern zu zeichnen ist wie folgt:
Graphics graphics = Graphics.FromImage(map);
Image customIcon = Image.FromFile("../../star.png");
graphics.DrawImage(customIcon, x, y);
Ich habe versucht, mit transparenten backgroud Bilder (PNG und GIF-Format), und es ist immer etwas rund um den Stern zu ziehen. Wie kann ich einen Stern ohne seinen Hintergrund zeichnen?
Das Programm ist für Windows Mobile 5.0 und höher, mit Compact Framework 2.0 SP2 und C#.
ich mit diesem Code versucht:
Graphics g = Graphics.FromImage(mapa);
Image iconoPOI = (System.Drawing.Image)Recursos.imagenPOI;
Point iconoOffset = new Point(iconoPOI.Width, iconoPOI.Height);
System.Drawing.Rectangle rectangulo;
ImageAttributes transparencia = new ImageAttributes();
transparencia.SetColorKey(Color.White, Color.White);
rectangulo = new System.Drawing.Rectangle(x, y, iconoPOI.Width, iconoPOI.Height);
g.DrawImage(iconoPOI, rectangulo, x, y, iconoPOI.Width, iconoPOI.Height, GraphicsUnit.Pixel, transparencia);
Aber ich habe nichts auf der Karte sehen.
X und Y ist de Koordinaten, wo ich die iconoPOI zeichnen will, die es ein PNG imagen mit einem weißen Hintergrund ist.
Vielen Dank!
Auch ist es möglich, dass der Hintergrund Ihres Sternbildes nicht rein weiß ist, was den Transparenzeffekt durcheinander bringen würde. – MusiGenesis