WPF将更高效的Render()视觉/控件渲染到位图

WPF将更高效的Render()视觉/控件渲染到位图,wpf,effects,shader,rendertargetbitmap,Wpf,Effects,Shader,Rendertargetbitmap,是否有更有效的方法将视觉效果渲染到位图?我试图在UI元素上使用着色器效果,然后我想在代码中逐像素修改结果。现在我使用这样的方法: Button btn = new Button(); btn.Effect = new BlurEffect(); RenderTargetBitmap rbmp = new RenderTargetBitmap(64, 64, 96d, 96d, PixelFormats.Pbgra32); rbmp.

是否有更有效的方法将视觉效果渲染到位图?我试图在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中使用的慢速渲染将这些后期处理按钮的像素放入数组?

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

包括链接或引用来源将使您的答案更有帮助。