Compartilhar via


CDC::BitBlt

Copia um bitmap do contexto do dispositivo de origem para este contexto atual do dispositivo.

BOOL BitBlt( 
   int x, 
   int y, 
   int nWidth, 
   int nHeight, 
   CDC* pSrcDC, 
   int xSrc, 
   int ySrc, 
   DWORD dwRop  
);

Parâmetros

  • x
    Especifica a coordenada x lógica do canto superior esquerdo do retângulo alvo.

  • s
    Especifica a coordenada y lógica do canto superior esquerdo do retângulo alvo.

  • nWidth
    Especifica a largura (em unidades lógicas) de bitmap do retângulo de origem e de destino.

  • nHeight
    Especifica a altura (em unidades lógicas) de bitmap do retângulo de origem e de destino.

  • pSrcDC
    Ponteiro para um objeto de CDC que identifica o contexto do dispositivo do bitmap que será copiado. Deve ser NULO se o dwRop especifica uma operação de varredura que não inclui uma fonte.

  • xSrc
    Especifica a coordenada x lógica do canto superior esquerdo do bitmap de origem.

  • ySrc
    Especifica a coordenada y lógica do canto superior esquerdo do bitmap de origem.

  • dwRop
    Especifica a operação de varredura a ser executada. Códigos de Quadriculação- operação definem como o GDI combina cores em operações de saída que envolvem um pincel atual, um bitmap possível de origem, e um bitmap de destino. Consulte BitBlt em Windows SDK para obter uma lista dos códigos de quadriculação- operação para o dwRop e as suas descrições

Para obter uma lista completa de código de quadriculação- operação, consulte Sobre códigos de operação de varredura em Windows SDK.

Valor de retorno

Diferente de zero se a função é com êxito; se não 0.

Comentários

O aplicativo pode alinhar as janelas ou as áreas de cliente nos limites de bytes para garantir que as operações de BitBlt ocorram retângulos alinhados em bytes. (Definido os sinalizadores de CS_BYTEALIGNWINDOW ou de CS_BYTEALIGNCLIENT quando você registrar a classe de janela.)

Operações deBitBlt em bytes retângulos são alinhados consideravelmente mais rápidas do que operações de BitBlt nos retângulos que não são byte alinhado. Se você desejar especificar estilos de classe como o alinhamento de bytes para seu próprio contexto de dispositivo, você precisará registrar uma classe de janela em vez de depender nas classes de base da Microsoft para torná-lo para você. Use a função global AfxRegisterWndClass.

GDI transforma nWidth e nHeightuma vez, usando o contexto do dispositivo de destino, e depois usando o contexto do dispositivo de origem. Se as extensões resultantes não coincidirem, GDI usa a função de StretchBlt do windows para compactar conforme necessário ou redimensionar o bitmap de origem.

Se o destino, a origem, e bitmaps de padrão não têm o mesmo formato de cor, converte o de função de BitBlt a fonte e bitmaps de padrão para coincidir com o destino. As cores de primeiro plano e plano de fundo de bitmap de destino são usados na conversão.

Quando a função de BitBlt converte um bitmap monocromático para cor, defina os bits brancos (1) a bit de cor de plano de fundo preto e de (0) para a cor de primeiro plano. As cores de primeiro plano e plano de fundo do contexto do dispositivo de destino são usados. Para converter cor ao monochrome pixels, dos conjuntos de BitBlt que correspondem a cor do plano de fundo para branco e para todos outros conjuntos pixels para enegrecer. BitBlt usa as cores de primeiro plano e plano de fundo do contexto do dispositivo de cor para converter de cor para o monochrome.

Observe que nem todos os contextos de dispositivo suportam BitBlt. Para verificar se um determinado contexto de dispositivo suporte BitBlt, use a função de membro de GetDeviceCaps e especifica o índice de RASTERCAPS .

Exemplo

Consulte o exemplo para CDC::CreateCompatibleDC.

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

CDC Class

Gráfico da hierarquia

CDC::GetDeviceCaps

CDC::PatBlt

CDC::SetTextColor

CDC::StretchBlt

StretchDIBits

BitBlt