WPF效率更高()可视化/控制到位图

是否有更高效的方式将视觉渲染为位图? 我正在尝试在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);

有没有办法将后处理后的Button的这些像素转换为数组,而不使用RenderTargetBitmap中使用的缓慢渲染?


好的,我找到了答案......这是不可能的:/目前有一个要求MS为RenderTargetBitmap实现硬件加速渲染,但在我看来,MS不愿意这样做。 案例关闭:(

链接地址: http://www.djcxy.com/p/26877.html

上一篇: WPF more efficient Render() Visual/Control to a bitmap

下一篇: How to set Transparency color for the output of RenderTargetBitmap?