当前位置:  开发笔记 > 开发工具 > 正文

使用着色器效果保存WPF图像

如何解决《使用着色器效果保存WPF图像》经验,为你挑选了1个好方法。

我有一个带附加模糊效果的WPF图像控件.有没有办法在不使用RenderTargetBitmap的情况下保存图像(带模糊)?

谢谢.

更新:我现在使用的是从System.Windows.Media.Effects.ShaderEffect派生的新自定义效果.我想保存我的图像应用着色器效果.



1> 小智..:

您可以渲染位图的唯一方法是使用RenderTargetBitmap.

看看这个例子:

BitmapSource bitmap=GetYourBitmap();
Rectangle r=new Rectangle();
r.Background=new ImageBrush(bitmap);
r.Effect=yourEffect;

Size sz=new Size(bitmap.PixelWidth, bitmap.PixelHeight);
r.Measure(sz);
r.Arrange(new Rect(sz);

var rtb=new RenderTargetBitmap();
rtb.Render(r);
return rtb;//here is your bitmap with effects applied

希望这可以帮助


值得指出的是,这将处理CPU上的效果,而不是GPU上的效果.
推荐阅读
pan2502851807
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有