【发布时间】:2011-04-08 17:40:23
【问题描述】:
是否有更有效的方式将视觉呈现到位图?我正在尝试对 UI 元素使用着色器效果,然后我想逐像素地修改代码中的结果。现在我使用这样的东西:
Button btn = new Button();
btn.Effect = new BlurEffect();
RenderTargetBitmap rbmp = new RenderTargetBitmap(64, 64, 96d, 96d, PixelFormats.Pbgra32);
rbmp.Render(btn); // this is very slow
byte[] pixels = new byte[64 * 64 * 4];
int str = width * PixelFormats.Pbgra32.BitsPerPixel / 8;
rbmp.CopyPixels(pixels, str, 0);
有没有办法在不使用 RenderTargetBitmap 中使用的慢速渲染的情况下将这些后处理 Button 的像素放入数组?
【问题讨论】:
标签: wpf effects shader rendertargetbitmap