public IBasicImage RenderToImageInMemory()
 {
     float density = 1;
     float dpi = 96;
     using (var g = System.Drawing.Graphics.FromHwnd(IntPtr.Zero))
     {
         dpi = g.DpiX;
         density = g.DpiX/96f;
     }
     var bitmap = new RenderTargetBitmap((int)(BoundsWidth * density), (int)(BoundsHeight * density), dpi, dpi, PixelFormats.Default);
     bitmap.Render(_drawingVisual);
     bitmap.Freeze();
     var image = new BasicImage(bitmap);
     return image;
 }
Example #2
0
        public IBasicImage CreateImageFromByteArray(byte[] data, int width, int height)
        {
            BitmapImage bitmap = null;
            try
            {
                var stream = new MemoryStream(data);
                stream.Seek(0, SeekOrigin.Begin);

                bitmap = new BitmapImage();
                bitmap.BeginInit();
                bitmap.StreamSource = stream;
                bitmap.EndInit();
                bitmap.Freeze();
            }
            catch (Exception ex)
            {
                //Console.WriteLine("DisposableImageFactory - Failed to create bitmap from byte array: {0}", ex);
                return null;
            }

            var image = new BasicImage(bitmap);
            return image;
        }