ID2D1Factory::CreateDxgiSurfaceRenderTarget (IDXGISurface*,constD2D1_RENDER_TARGET_PROPERTIES&,ID2D1RenderTarget**) 方法 (d2d1.h)

创建绘制到 DirectX 图形基础结构 (DXGI) 图面的呈现目标。

语法

HRESULT CreateDxgiSurfaceRenderTarget(
  [in]  IDXGISurface                          *dxgiSurface,
  [ref] const D2D1_RENDER_TARGET_PROPERTIES & renderTargetProperties,
  [out] ID2D1RenderTarget                     **renderTarget
);

参数

[in] dxgiSurface

类型: IDXGISurface*

呈现器目标将绘制到的 IDXGISurface。

[ref] renderTargetProperties

类型: const D2D1_RENDER_TARGET_PROPERTIES &

呈现模式、像素格式、远程处理选项、DPI 信息和硬件呈现所需的最低 DirectX 支持。 有关支持的像素格式的信息,请参阅 支持的像素格式和 Alpha 模式

[out] renderTarget

类型: ID2D1RenderTarget**

此方法返回时,包含指向此方法创建的 ID2D1RenderTarget 对象的指针的地址。

返回值

类型: HRESULT

如果该方法成功,则返回 S_OK。 否则,它将返回 HRESULT 错误代码。

注解

若要写入 Direct3D 图面,请获取 IDXGISurface 并将其传递给 CreateDxgiSurfaceRenderTarget 方法来创建 DXGI 表面呈现目标;然后,可以使用 DXGI 表面呈现目标将二维内容绘制到 DXGI 图面。

DXGI 表面呈现目标是 一种 ID2D1RenderTarget。 与其他 Direct2D 呈现目标一样,可以使用它创建资源并发出绘图命令。

DXGI 表面呈现目标和 DXGI 图面必须使用相同的 DXGI 格式。 如果在创建呈现目标时指定 DXGI_FORMAT_UNKOWN 格式,则它将自动使用图面的格式。

DXGI 表面呈现目标不执行 DXGI 表面同步。

有关创建和使用 DXGI 表面呈现目标的详细信息,请参阅 Direct2D 和 Direct3D 互操作性概述

若要使用 Direct2D,必须使用 D3D10_CREATE_DEVICE_BGRA_SUPPORT 标志创建提供 IDXGISurfaceDirect3D 设备。

创建呈现目标且硬件加速可用时,可以在计算机的 GPU 上分配资源。 通过创建一次呈现器目标并尽可能长时间地保留它,可以获得性能优势。 应用程序应创建呈现目标一次,并在应用程序的生命周期内保留这些目标,或者直到呈现目标的 EndDraw 方法返回 D2DERR_RECREATE_TARGET 错误为止。 收到此错误时,需要重新创建呈现目标 (以及它) 创建的任何资源。

示例

请参阅 ID2D1Factory::CreateDxgiSurfaceRenderTarget 中的代码示例。

要求

要求
最低受支持的客户端 Windows 7、带 SP2 的 Windows Vista 和适用于 Windows Vista 的平台更新 [桌面应用 |UWP 应用]
最低受支持的服务器 Windows Server 2008 R2、Windows Server 2008 SP2 和适用于 Windows Server 2008 的平台更新 [桌面应用 |UWP 应用]
目标平台 Windows
标头 d2d1.h
Library D2d1.lib
DLL D2d1.dll

另请参阅

CreateDxgiSurfaceRenderTarget (IDXGISurface,const D2D1_RENDER_TARGET_PROPERTIES,ID2D1RenderTarget)

Direct2D 和 Direct3D 互操作性概述

ID2D1Factory