【问题标题】:WPF more efficient Render() Visual/Control to a bitmapWPF 更高效的 Render() Visual/Control 到位图
【发布时间】: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


    【解决方案1】:

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

    【讨论】:

    • 包含链接或引用来源将使您的回答更有帮助。
    猜你喜欢
    • 1970-01-01
    • 2015-05-17
    • 2022-01-22
    • 1970-01-01
    • 1970-01-01
    • 2011-08-31
    • 2012-11-28
    • 1970-01-01
    • 2014-01-21
    相关资源
    最近更新 更多