Método IDirect3DDevice9Ex::ComposeRects (d3d9.h)
Copie uma cadeia de texto para uma superfície usando um alfabeto de glifos em outra superfície. A composição é feita pela GPU usando operações bit a bit.
Sintaxe
HRESULT ComposeRects(
[in] IDirect3DSurface9 *pSrc,
[in] IDirect3DSurface9 *pDst,
[in] IDirect3DVertexBuffer9 *pSrcRectDescs,
[in] UINT NumRects,
[in] IDirect3DVertexBuffer9 *pDstRectDescs,
[in] D3DCOMPOSERECTSOP Operation,
[in] int Xoffset,
[in] int Yoffset
);
Parâmetros
[in] pSrc
Tipo: IDirect3DSurface9*
Um ponteiro para uma superfície de origem (preparada por IDirect3DSurface9) que fornece os glifos alfabetos. Essa superfície deve ser criada com o sinalizador D3DUSAGE_TEXTAPI .
[in] pDst
Tipo: IDirect3DSurface9*
Um ponteiro para a superfície de destino (preparada por IDirect3DSurface9) que recebe os dados de glifo. A superfície deve fazer parte de uma textura.
[in] pSrcRectDescs
Tipo: IDirect3DVertexBuffer9*
Um ponteiro para um buffer de vértice (consulte IDirect3DVertexBuffer9) que contém retângulos (consulte D3DCOMPOSERECTDESC) que incluem os glifos desejados na superfície de origem.
[in] NumRects
Tipo: UINT
O número de retângulos ou glifos usados na operação. O número se aplica às superfícies de origem e de destino. O intervalo é de 0 a D3DCOMPOSERECTS_MAXNUMRECTS.
[in] pDstRectDescs
Tipo: IDirect3DVertexBuffer9*
Um ponteiro para um buffer de vértice (consulte IDirect3DVertexBuffer9) que contém retângulos (consulte D3DCOMPOSERECTDESTINATION) que descrevem o destino para o qual o glifo indicado da superfície de origem será copiado.
[in] Operation
Tipo: D3DCOMPOSERECTSOP
Especifica como combinar as superfícies de origem e de destino. Consulte D3DCOMPOSERECTSOP.
[in] Xoffset
Tipo: INT
Um valor adicionado às coordenadas x de todos os retângulos de destino. Esse valor pode ser negativo, o que pode fazer com que o glifo seja rejeitado ou recortado se o resultado estiver além dos limites da superfície.
[in] Yoffset
Tipo: INT
Um valor adicionado às coordenadas y de todos os retângulos de destino. Esse valor pode ser negativo, o que pode fazer com que o glifo seja rejeitado ou recortado se o resultado estiver além dos limites da superfície.
Valor retornado
Tipo: HRESULT
Se o método for bem-sucedido, o valor retornado será D3D_OK.
Comentários
Glifos de uma superfície de origem de um bit são colocados juntos em outra superfície de textura de um bit com esse método. Em seguida, a superfície de destino pode ser usada como a origem de uma operação de texugo normal que filtrará e dimensionará as cadeias de caracteres de texto em alguma outra superfície não monocromática.
Esse método tem várias restrições (que são semelhantes ao StretchRect):
- As superfícies não podem ser bloqueadas.
- As superfícies de origem e destino não podem ser a mesma superfície.
- As superfícies de origem e destino devem ser criadas com o formato D3DFMT_A1 .
- A superfície de origem e os dois buffers de vértice devem ser criados com o sinalizador D3DPOOL_DEFAULT .
- A superfície de destino deve ser criada com os sinalizadores D3DPOOL_DEFAULT ou D3DPOOL_SYSTEMMEM .
- Os retângulos de origem devem estar dentro da superfície de origem.
Requisitos
Plataforma de Destino | Windows |
Cabeçalho | d3d9.h |
Biblioteca | D3D9.lib |