| 
 | I need to give selected text from Visio (it's give me metafile) and convert it to bitmap image. I use such code: using (Metafile winMetafile = (System.Drawing.Imaging.Metafile)Image.FromFile(pathToMetaFile, true))
        {
            var header = winMetafile.GetMetafileHeader();
            var kw = header.Bounds.Width / header.DpiX;
            var kh = header.Bounds.Height / header.DpiY;
            var width = kw * Resolutions.ScreenDpi;
            var height = kh * Resolutions.ScreenDpi;
            using (var bitmap = new Bitmap((int)width, (int)height, winMetafile.PixelFormat))
            {
                using (Graphics g = Graphics.FromImage(bitmap))
                {
                    g.Clear(System.Drawing.Color.White);g.DrawImage(winMetafile, 0, 0, width, height);
                    this.ImagePreviewSource = Imaging.CreateBitmapSourceFromHBitmap(bitmap.GetHbitmap(), IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions());
                    this.ImageWidth = this.ImagePreviewSource.Width;
                    this.ImageHeight = this.ImagePreviewSource.Height;
                }
            }
        }
 It's work fine in old versions of Visio, like 2010, 2008 etc. But when I try it in Visio 2015 - it's work, but with very low quality. Images in bitmap looks like "stair-stepping". But when I open metafile - it's look good. I guess that problem
 links to alpha channel or opacity, but I don't know how to fix it. Could anybody help me. Update 1 |