ID2D1RenderTarget::CreateCompatibleRenderTarget (constD2D1_SIZE_F*,constD2D1_SIZE_U*,constD2D1_PIXEL_FORMAT*,D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS,ID2D1BitmapRenderTarget**) 方法 (d2d1.h)
创建与当前呈现目标兼容的中间屏幕外绘制期间使用的位图呈现目标。
语法
HRESULT CreateCompatibleRenderTarget(
const D2D1_SIZE_F *desiredSize,
const D2D1_SIZE_U *desiredPixelSize,
const D2D1_PIXEL_FORMAT *desiredFormat,
D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS options,
ID2D1BitmapRenderTarget **bitmapRenderTarget
);
参数
desiredSize
类型:[in] const D2D1_SIZE_F*
新呈现目标所需的大小 (与设备无关的像素) (如果它应不同于原始呈现目标)。 有关详细信息,请参阅“备注”部分。
desiredPixelSize
类型:[in] const D2D1_SIZE_U*
如果新呈现目标应不同于原始呈现目标,则其所需大小(以像素为单位)。 有关详细信息,请参见“备注”部分。
desiredFormat
类型:[in] const D2D1_PIXEL_FORMAT*
新呈现目标的所需像素格式和 alpha 模式。 如果像素格式设置为 DXGI_FORMAT_UNKNOWN,则新的呈现目标使用与原始呈现目标相同的像素格式。 如果 alpha 模式 为D2D1_ALPHA_MODE_UNKNOWN,则新呈现目标的 alpha 模式默认 为 D2D1_ALPHA_MODE_PREMULTIPLIED。 有关支持的像素格式的信息,请参阅 支持的像素格式和 Alpha 模式。
options
类型:[in] D2D1_COMPATIBLE_RENDER_TARGET_OPTIONS
指定新呈现目标是否必须与 GDI 兼容的值。
bitmapRenderTarget
类型:[out] ID2D1BitmapRenderTarget**
此方法返回时,包含指向指向新位图呈现目标的指针的指针。 此参数未经初始化即被传递。
返回值
类型: HRESULT
如果该方法成功,则返回 S_OK。 否则,它将返回 HRESULT 错误代码。
注解
可以通过指定 desiredSize 或 desiredPixelSize 的值来更改新呈现目标的像素大小和 DPI:
- 如果指定 了 desiredSize ,但没有 指定 desiredPixelSize ,则使用父目标 DPI 根据所需大小计算像素大小。 如果 desiredSize 映射到整数像素大小,则兼容呈现目标的 DPI 与父目标的 DPI 相同。 如果 desiredSize 映射到小数像素大小,则像素大小将向上舍入为最接近的整数,并且兼容呈现目标的 DPI 略高于父呈现目标的 DPI。 在所有情况下,坐标 (desiredSize.width、 desiredSize.height) 映射到兼容呈现目标的右下角。
- 如果指定了 desiredPixelSize ,而 desiredSize 未指定,则新呈现目标的 DPI 与原始呈现目标相同。
- 如果同时指定 了 desiredSize 和 desiredPixelSize ,则计算新呈现目标的 DPI 以考虑比例的差异。
- 如果未指定 desiredSize 和 desiredPixelSize ,则新的呈现目标大小和 DPI 与原始呈现目标匹配。
要求
要求 | 值 |
---|---|
目标平台 | Windows |
标头 | d2d1.h |
Library | D2d1.lib |
DLL | D2d1.dll |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈