Hallo,
Vielleicht kann mir einer von euch kurz weiterhelfen.
Ich habe ein Image das ich über einen URI einlesen und anschließend in einem Image Control in einer WPF Anwendung anzeige.
BitmapImage maklerimage = new BitmapImage(new Uri(maklerLogoPath));
//Image maklerImg = new Image();
//maklerImg.Source = maklerimage;
//dp_Logo.Children.Insert(0,maklerImg);
ImgMakler.Source = maklerimage;
Ich soll von diesem eingelesenen Image den Background Transparent machen. Dazu muss ich nur das Pixel auf der Stelle 0,0 nehmen und diese Farbe als Transparenz setzen. In der zugehörigen Webapplikation mache ich dies in einem ImageHandler folgendermaßen:
byte[] a_image = MaklerStateManager.CurrentElemQKernel.GetContent(a_logo);
MemoryStream ms = new MemoryStream(a_image);
Image logoimage = Image.FromStream(ms);
// We have to convert the Image to a Bitmap, so we can make the background Transparent
Bitmap logo = new Bitmap(logoimage);
if (ConfigurationManager.AppSettings["MaklerLogoTransperency"] == "On")
logo.MakeTransparent(logo.GetPixel(0, 0));
//set Content-Type (for Transparent Background images)
//always set Png
ImageInfo a_imageInfo = new ImageInfo(logo);
ContentType = System.Drawing.Imaging.ImageFormat.Png;
return a_imageInfo;
Ich weiß allerdings nicht so ganz genau wie ich dieses Vorgehen in WPF umsetzen kann, da ich keinen Image-Typen finde bei dem ich den Background Transparent machen kann und den ich anschließend an die Source des Image-Controls binden kann.
Weeks of programming can save you hours of planning