将WPF输出写入图像文件

7

有没有一种方法可以将WPF的输出,例如画布,写入图像文件,如jpg或类似格式。

我想使用WPF为我创建背景,因为我想为矩形使用BitmapEffects,并使角落变圆。

我想在网页中使用位图。

这可能吗?

马尔科姆

1个回答

9

我有一篇关于这个的博客文章,在这里。以下是文章中的代码:

   Rect rect = new Rect(canvas.RenderSize);
   RenderTargetBitmap rtb = new RenderTargetBitmap((int)rect.Right,
     (int)rect.Bottom, 96d, 96d, System.Windows.Media.PixelFormats.Default);
   rtb.Render(canvas);
   //encode as PNG
   BitmapEncoder pngEncoder = new PngBitmapEncoder();
   pngEncoder.Frames.Add(BitmapFrame.Create(rtb));

   //save to memory stream
   System.IO.MemoryStream ms = new System.IO.MemoryStream();

   pngEncoder.Save(ms);
   ms.Close();
   System.IO.File.WriteAllBytes("logo.png", ms.ToArray());
   Console.WriteLine("Done");

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接