共用方式為


D3DDDIARG_COMPOSERECTS結構 (d3dumddi.h)

D3DDDIARG_COMPOSERECTS 結構描述用來撰寫矩形區域的參數。

語法

typedef struct _D3DDDIARG_COMPOSERECTS {
  [in] HANDLE                hSrcResource;
  [in] UINT                  SrcSubResourceIndex;
  [in] HANDLE                hDstResource;
  [in] UINT                  DstSubResourceIndex;
  [in] HANDLE                hSrcRectDescsVB;
  [in] UINT                  NumRects;
  [in] HANDLE                hDstRectDescsVB;
  [in] D3DDDI_COMPOSERECTSOP Operation;
  [in] INT                   XOffset;
  [in] INT                   YOffset;
} D3DDDIARG_COMPOSERECTS;

成員

[in] hSrcResource

包含來源介面之來源資源的句柄。 建立介面時,使用者模式顯示驅動程式會在呼叫驅動程式的 CreateResource 函式時,在 Format 成員和 TextApi 位字段旗標的 FlagsD3DDDIARG_CREATERESOURCE 成員中,D3DDDIFMT_A1 (收到每圖元一位) 一位) 值。 表面必須建立為紋理的一部分。

[in] SrcSubResourceIndex

來源資源內來源介面的索引。

[in] hDstResource

包含目的地介面之目的地資源的句柄。 建立介面時,使用者模式顯示驅動程式會在呼叫驅動程式的 CreateResource 中,收到D3DDDIFMT_A1 (每像素一位) D3DDDIARG_CREATERESOURCE) 值。 表面必須建立為紋理的一部分。 表面可能已使用 TextApi 位字段旗標建立。

[in] DstSubResourceIndex

目的地資源內目的地介面的索引。

[in] hSrcRectDescsVB

頂點緩衝區的句柄,其中包含D3DCOMPOSERECTSRCDESC結構的陣列。 陣列中的每個元素都會定義來源介面上的矩形。 建立頂點緩衝區時,使用者模式顯示驅動程式會在呼叫驅動程式 CreateResource 函式時,於D3DDDIARG_CREATERESOURCE結構的 Flags 成員中收到 TextApi 位字段旗標。

[in] NumRects

要複製的矩形區域數目,這是 hDstRectDescsVB 成員所識別頂點緩衝區中D3DCOMPOSERECTDSTDESC結構的數目。 驅動程序應該忽略 NumRects 設為大於 0xFFFF 的 ComposeRects 呼叫。

[in] hDstRectDescsVB

頂點緩衝區的句柄,其中包含D3DCOMPOSERECTDSTDESC結構的陣列。 陣列中的每個元素都會定義在目的地介面上複製來源矩形的位置。 如需詳細資訊,請參閱接下來的<備註>一節。 建立頂點緩衝區時,使用者模式顯示驅動程式會在呼叫驅動程式 CreateResource 函式時,於D3DDDIARG_CREATERESOURCE結構的 Flags 成員中收到 TextApi 位字段旗標。

[in] Operation

描述如何撰寫矩形區域的D3DDDI_COMPOSERECTSOP值。 這個成員可以是下列其中一個值。

ReplTest1 意義
D3DDDICOMPOSERECTS_COPY 將每個來源位複製到目的地。
D3DDDICOMPOSERECTS_OR 在 OR 作業中結合來源和目的地位,並複製到目的地。
D3DDDICOMPOSERECTS_AND 在 AND 作業中結合來源和目的地位,並複製到目的地。
D3DDDICOMPOSERECTS_NEG 結合來源位的負數與目的地位,並複製到目的地。 [Dest bit & (~ Src bit) ]

[in] XOffset

要加入所有目的地矩形區域的 X 座標的位移。 位移可以是負數,這可能會導致結果矩形遭到拒絕或裁剪。

[in] YOffset

要新增至所有目的地矩形區域的 Y 座標的位移。 位移可以是負數,這可能會導致結果矩形遭到拒絕或裁剪。

備註

包含撰寫指令的頂點緩衝區會使用D3DUSAGE_TEXTAPI使用方式來建立。 下列程式代碼會定義頂點緩衝區陣列中包含的結構。 如需這些結構的詳細資訊,請參閱 DirectX SDK 檔。

struct D3DCOMPOSERECTSRCDESC {
USHORT X, Y;          // Coordinates of top-left corner
USHORT width, height; // Width and height of the glyph in bits
};

struct D3DCOMPOSERECTDSTDESC {
USHORT RectDescIndex; // Index of one of the D3DCOMPOSERECTSRCDESC structures in the vertex buffer represented by hSrcRectDescsVB
USHORT reserved;      // Use to align the struct and fields to good boundaries
SHORT X, Y;            // Position in bits in the destination surface
};

規格需求

需求
最低支援的用戶端 可在 Windows Vista 和更新版本的 Windows 作業系統中使用。
標頭 d3dumddi.h (包含 D3dumddi.h)

另請參閱

ComposeRects

矩形