DXGK_GDIARG_BITBLT结构(d3dkmddi.h)

DXGK_GDIARG_BITBLT结构描述了 GDI 硬件加速 位块传输(bitblt) 的特征,无需拉伸。

语法

typedef struct _DXGK_GDIARG_BITBLT {
  [in] RECT SrcRect;
  [in] RECT DstRect;
       UINT SrcAllocationIndex;
       UINT DstAllocationIndex;
       UINT NumSubRects;
       RECT *pSubRects;
       WORD Rop;
       WORD Rop3;
       UINT SrcPitch;
       UINT DstPitch;
} DXGK_GDIARG_BITBLT;

成员

[in] SrcRect

RECT 结构,用于定义要复制的矩形区域。 此矩形在源图面的坐标系中指定,由两个点定义:左上角和右下角。 定义矩形的两个点始终是有序的。

源矩形可以超出源图面的边界。

此矩形映射到由 DstRect定义的目标矩形。 SrcRect 用于将子矩形从源空间转换为目标空间。

有关详细信息,请参阅“备注”部分。

[in] DstRect

RECT 结构,用于定义要修改的矩形区域。 此矩形在目标图面的坐标系中指定,由两个点定义:左上角和右下角。 矩形右下角为独占;也就是说,它的下边缘和右边缘不是位块传输的一部分。 定义矩形的两个点始终是有序的。

DstRect 定义的目标矩形 可以超出目标图面的边界,但子矩形不能。 此外,保证所有子矩形都适合目标图面。 子矩形可由小于目标矩形的边界矩形进一步约束。

有关详细信息,请参阅“备注”部分。

SrcAllocationIndex

[in]分配列表中的元素的索引,该索引指定由 SrcRect 源矩形引用的分配。

DstAllocationIndex

[in]分配列表中的元素的索引,指定由 DstRect 目标矩形引用的分配。

NumSubRects

[in]目标图面空间中由 DstRect 目标矩形绑定的子矩形数。

pSubRects

[in]指向目标图面空间中由 DstRect 目标矩形绑定的子矩形的指针。

Rop

[in]一个 8 位值,该值指定由 DXGK_GDIROP_BITBLT 枚举的常量值定义的 GDI 光栅作(ROP)。

Rop3

[in]一个 8 位值,该值指定一个三元 GDI 光栅作(ROP3),该作将画笔、源位图和目标位图组合在 256 个可能的组合之一中。 仅当驱动程序在 DXGK_PRESENTATIONCAPS 结构中设置 SupportAllBltRops 成员时,才会处理这种类型的光栅作。

SrcPitch

[in]源图面的间距(以字节为单位)。 有关使用音调的详细信息,请参阅“备注”部分。

DstPitch

[in]目标图面的间距(以字节为单位)。 有关使用音调的详细信息,请参阅“备注”部分。

言论

SrcPitchDstPitch 间距值必须分别用于确定 SrcRectDstRect 矩形的字节位置,分别用于以下类型的 D3DKMDT_GDISURFACETYPE分配:

D3DKMDT_GDISURFACE_STAGING_CPUVISIBLE

D3DKMDT_GDISURFACE_EXISTINGSYSMEM

对于其他分配类型,应忽略音调。

根据 DXGK_PRESENTATIONCAPS 结构的 AlignmentShift 成员(即 DXGK_DRIVERCAPS)保证音调在位块传输中对齐。PresentationCaps.AlignmentShift)。

如果矩形由坐标(左、上)和(右、下)的两个像素定义,则第一个像素的地址为:

Allocation.BaseAddress + (top * Pitch) + (left * 4)

矩形最后一个像素的地址为:

Allocation.BaseAddress + ((bottom - 1) * Pitch) + ((right - 1) * 4)

将子矩形转换为源图面空间时,保证结果位于源图面中。 此转换由以下公式定义:

<SrcSubRect.left = SubRect.left - DstRect.left + SrcRect.left;
SrcSubRect.right = SubRect.right - DstRect.left + SrcRect.left;
SrcSubRect.top = SubRect.top - DstRect.top + SrcRect.top;
SrcSubRect.bottom = SubRect.bottom - DstRect.top + SrcRect.top;

要求

要求 价值
最低支持的客户端 Windows 7
标头 d3dkmddi.h (包括 D3dkmddi.h)

另请参阅

D3DKMDT_GDISURFACETYPE

DXGK_DRIVERCAPS

DXGK_GDIROP_BITBLT

DXGK_PRESENTATIONCAPS

RECT