在WPF中想将其中的图片换到WINFORM中去用,老是出现下面的错误,各位碰到过吗?说点方法呀.无法从System.Windows.Media.ImageBrush转换为System.Drawing.Image无法从System.Windows.Media.Imaging.RenderTargetBitmap转换为System.Drawing.Image

解决方案 »

  1.   

    WPF问题,怎么这么少人关注呀?
      

  2.   

    无语了,没人关注,自己解决了,帖出来共享下吧public System.Drawing.Bitmap GetBitmap(BitmapSource image)
            { 
                    System.Windows.Media.Imaging.BitmapSource bitmapSource = image as BitmapSource;
     
                    double newWidthRatio = image.Width / (double)bitmapSource.PixelWidth;
                    double newHeightRatio = ((image.Width * bitmapSource.PixelHeight) / (double)bitmapSource.PixelWidth) / (double)bitmapSource.PixelHeight;                System.Windows.Media.Imaging.BitmapSource transformedBitmapSource = new System.Windows.Media.Imaging.TransformedBitmap(
                        bitmapSource,
                        new System.Windows.Media.ScaleTransform(newWidthRatio, newHeightRatio));                int width = transformedBitmapSource.PixelWidth;
                    int height = transformedBitmapSource.PixelHeight;
                    int stride = width * ((transformedBitmapSource.Format.BitsPerPixel + 7) / 8);                byte[] bits = new byte[height * stride];                transformedBitmapSource.CopyPixels(bits, stride, 0);                unsafe
                    {
                        fixed (byte* pBits = bits)
                        {
                            IntPtr ptr = new IntPtr(pBits);                        System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(
                                width,
                                height,
                                stride,
                                System.Drawing.Imaging.PixelFormat.Format32bppPArgb,
                                ptr);                        return bitmap;
                        }
                    }
                }
      

  3.   

    楼主,请教你个问题,如何把Image转化成Bitmap。请帮下忙,谢谢!