使用Win32公共控件在`ID2D1Bitmap1`上绘制?

问题描述 投票:0回答:1

[我使用ID2D1DeviceContext绘制了大部分UI(我以How to render by using a Direct2D device context中显示的方式获得它,但是我想要一些经典的窗口控件:EDITINPUT

如何强制Win32控件绘制到我的ID2D1Bitmap1上?那有可能吗?

winapi gdi direct2d dxgi
1个回答
0
投票

如何强制Win32控件绘制到我的ID2D1Bitmap1上?那有可能吗?

是。您可以将GDI内容写入兼容Direct2D GDI的渲染目标。这种方法对于主要使用Direct2D进行渲染但具有可扩展性模型或其他需要使用GDI进行渲染的功能的应用程序很有用。

步骤:

要将GDI内容渲染到Direct2D GDI兼容的渲染目标,请使用ID2D1GdiInteropRenderTarget,用于访问设备可以接受GDI绘图调用的上下文。与其他界面不同,ID2D1GdiInteropRenderTarget对象不是直接创建的。代替,使用现有渲染目标实例的QueryInterface方法。

参考:Draw GDI Content to a Direct2D GDI-Compatible Render Target

© www.soinside.com 2019 - 2024. All rights reserved.