IDirectDrawSurface::Blt
9/8/2008
Esse método executa um transferir bloco bit. Este método não tem suporte Z-buferização ou combinação alfa (consulte alfa canalizar) durante as operações blit de cores.
Syntax
HRESULT Blt(
LPRECT lpDestRect,
LPDIRECTDRAWSURFACE lpDDSrcSurface,
LPRECT lpSrcRect,
DWORD dwFlags,
LPDDBLTFX lpDDBltFx
);
Parameters
- lpDestRect
Endereço de um RECT estrutura que define a upper-Left e Inferior-direito pontos do retângulo para blit de cores na superfície do destino. Se este parâmetro é NULL, a superfície destino inteira será usada.
- lpDDSrcSurface
Endereço de um IDirectDrawSurface interface para o DirectDrawSurface objeto que é a origem de blit de cores.
- lpSrcRect
Endereço de um RECT estrutura que define a upper-Left e Inferior-direito pontos do retângulo para blit de cores na superfície de origem. Se este parâmetro é NULL, a superfície origem inteira será usada.
dwFlags
Uma combinação de sinalizadores que determinam o válido membros de associado DDBLTFX estrutura, chave cor especificar informações, ou o comportamento especial que solicitação a partir de método.A seguinte tabela mostra os sinalizadores validação possíveis.
Sinalizador Descrição DDBLT_COLORFILL
Usa o dwFillColor membro das DDBLTFX estrutura como a cor RGB que preenche o retângulo destino na superfície do destino.
DDBLT_KEYDESTOVERRIDE
Usa o ddckDestColorkey membro das DDBLTFX estrutura como a chave cor de superfície de destino.
DDBLT_KEYSRCOVERRIDE
Usa o ddckSrcColorkey membro das DDBLTFX estrutura como a chave cor de superfície de origem.
DDBLT_ROP
Usa o dwROP membro das DDBLTFX estrutura para o ROP para este blit de cores. Esses ROPs são as mesmas definidos de Win32 API.
A seguinte tabela mostra a chave cor possíveis sinalizadores.
Sinalizador Descrição DDBLT_KEYDEST
Usa a chave cor associado com a superfície destino.
DDBLT_KEYSRC
Usa a chave cor associado com a superfície origem.
A seguinte tabela mostra os sinalizadores comportamento possíveis.
Sinalizador Descrição DDBLT_WAITNOTBUSY
Espera por uma operação de desenho anteriormente iniciada para completo instead of retornar imediatamente com a DDERR_WASSTILLDRAWING valor de retorno.
Se uma operação de desenho anterior for em andamento no tempo do chamar, este sinalizador adia retornando do chamar até começa a nova operação blit de cores ou ocorrerá um erro.
DDBLT_WAITVSYNC
Aguarda um V-sincronização antes de executar a operação blit de cores.
- lpDDBltFx
Endereço das DDBLTFX estrutura.
Return Value
Se o método for bem-sucedido, o valor de retorno é DD_OK.
Se o método falhar, o valor de retorno pode ser uma do seguinte valores de erro:
DDERR_GENERIC |
DDERR_INVALIDCLIPLIST |
DDERR_INVALIDOBJECT |
DDERR_INVALIDPARAMS |
DDERR_INVALIDRECT |
DDERR_NOALPHAHW |
DDERR_NOBLTHW |
DDERR_NOCLIPLIST |
DDERR_NORASTEROPHW |
DDERR_NOSTRETCHHW |
DDERR_SURFACEBUSY |
DDERR_SURFACELOST |
DDERR_UNSUPPORTED |
DDERR_WASSTILLDRAWING |
Para obter mais informações sobre esses erros códigos Consulte DirectDraw Return Values.
Remarks
Este método é capaz de síncrono ou assíncrono blits (o comportamento usar como padrão), qualquer memória exibir para exibir memória, memória exibir para memória sistema, memória sistema para exibir memória ou memória sistema para sistema memória.
O blits podem ser executadas usando chaves cor origem e destino cor chaves. Arbitrário esticar ou reduzindo será executada se a retângulos origem e destino não forem o mesmo tamanho.
Normalmente, IDirectDrawSurface::Blt retorna imediatamente com um erro se o blitter está ocupado e de blit de cores não pôde ser configurada. Especificar o sinalizador DDBLT_WAITNOTBUSY a solicitação um síncrono blit de cores. Quando você incluir o sinalizador DDBLT_WAITNOTBUSY, o método espera até que o blit de cores pode ser configurado ou outro erro ocorre antes de que retornará.
O RECT estruturas são definidas de modo que o direito e inferior Os membros são exclusivos: direito Sinal de menos Esquerdo é igual a largura do retângulo, não um menor do que a largura.
Requirements
Header | ddraw.h |
Library | ddraw.lib |
Windows Embedded CE | Windows Embedded CE 6.0 and later |
Windows Mobile | Pocket PC for Windows Mobile Version 5.0 and later, Smartphone for Windows Mobile Version 5.0 and later |