Compartilhar via


CDC::StretchBlt

Copia um bitmap de um retângulo fonte em um retângulo alvo, alongando o bitmap ou compactando se necessário para ajustar as dimensões do retângulo alvo.

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

Parâmetros

  • x
    Especifica a coordenada x (em unidades lógicas) do canto superior esquerdo do retângulo alvo.

  • s
    Especifica a coordenada y (em unidades lógicas) do canto superior esquerdo do retângulo alvo.

  • nWidth
    Especifica a largura (em unidades lógicas) do retângulo alvo.

  • nHeight
    Especifica a altura (em unidades lógicas) do retângulo alvo.

  • pSrcDC
    Especifica o contexto do dispositivo de origem.

  • xSrc
    Especifica a coordenada x (em unidades lógicas) do canto superior esquerdo do retângulo de origem.

  • ySrc
    Especifica a coordenada x (em unidades lógicas) do canto superior esquerdo do retângulo de origem.

  • nSrcWidth
    Especifica a largura (em unidades lógicas) do retângulo de origem.

  • nSrcHeight
    Especifica a altura (em unidades lógicas) do retângulo de origem.

  • dwRop
    Especifica a operação de varredura a ser executada.Códigos de operação de varredura definem como 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.Este parâmetro pode ser um dos seguintes valores:

    • BLACKNESS gira qualquer preto de saída.

    • DSTINVERT inverte o bitmap de destino.

    • MERGECOPY combina o padrão e o bitmap de origem usando o valor booleano E o operador.

    • MERGEPAINT combina o bitmap inverso de origem pelo bitmap de destino usando o operador OR booleano.

    • NOTSRCCOPY copia o bitmap inverso da fonte para o destino.

    • NOTSRCERASE inverte o resultado de combinar bitmaps de destino e de origem usando o operador OR booleano.

    • PATCOPY copia o padrão para o bitmap de destino.

    • PATINVERT combina o bitmap de destino com o padrão usando o operador XOR booleano.

    • PATPAINT combina o bitmap inverso de origem com o padrão usando o operador OR booleano.Combina o resultado da operação com o bitmap de destino usando o operador OR booleano.

    • SRCAND combina pixels de bitmaps de destino e de origem usando o valor booleano E o operador.

    • SRCCOPY copia o bitmap da fonte para o bitmap de destino.

    • SRCERASE inverte o bitmap de destino e combina o resultado com o bitmap de origem usando o valor booleano E o operador.

    • SRCINVERT combina pixels de bitmaps de destino e de origem usando o operador XOR booleano.

    • SRCPAINT combina pixels de bitmaps de destino e de origem usando o operador OR booleano.

    • WHITENESS gira todas as saídas brancas.

Valor de retorno

Diferente de zero se o bitmap é desenhado; se não 0.

Comentários

A função usa o modo de esticamento do contexto do dispositivo de destino (definido por SetStretchBltMode) para determinar como alongar ou compactar o projeto.

A função de StretchBlt move o bitmap de dispositivo de origem determinado por pSrcDC para o dispositivo de destino representado pelo objeto de dispositivo contexto cuja função de membro é chamada.xSrc, ySrc, nSrcWidth, e os parâmetros de nSrcHeight definem o canto superior esquerdo e as dimensões do retângulo de origem.O x, y, nWidth, e os parâmetros de nHeight ao canto superior esquerdo e as dimensões do retângulo alvo.A operação de varredura especificada por dwRop define como o bitmap de origem e os bits já no dispositivo de destino são combinados.

A função de StretchBlt cria uma imagem espelhada de um bitmap se símbolos de nSrcWidth e nWidth ou nSrcHeight e parâmetros de nHeight diferem.Se nSrcWidth e nWidth sinais têm diferentes, a função cria uma imagem espelhada de bitmap no eixo x.Se nSrcHeight e nHeight sinais têm diferentes, a função cria uma imagem espelhada de bitmap no eixo y.

A função de StretchBlt expande ou compacta o bitmap de origem na memória e copia o resultado de destino.Se um padrão deve ser mesclado com o resultado, não será mesclado até que o bitmap alongado de origem é copiado para o destino.Se um pincel for usada, o pincel é selecionada no contexto do dispositivo de destino.As coordenadas de destino são transformadas de acordo com o contexto do dispositivo de destino; as coordenadas de origem são transformadas de acordo com o contexto do dispositivo de origem.

Se o destino, a origem, e bitmaps de padrão não têm o mesmo formato de cor, converte StretchBlt da fonte e bitmaps de padrão para corresponder bitmaps de destino.As cores de primeiro plano e plano de fundo do contexto do dispositivo de destino são usados na conversão.

Se StretchBlt deve converter 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.Para converter cor ao monochrome, defina os pixels correspondentes a cor do plano de fundo para branco (1) e defina todos outros pixels para enegrecer (0).As cores de primeiro plano e plano de fundo do contexto de dispositivo com cores são usados.

Nem todos os dispositivos oferecem suporte a função de StretchBlt .Para determinar se um dispositivo suporta StretchBlt, chame a função de membro de GetDeviceCaps com o índice de RASTERCAPS e verificar o valor de retorno para o sinalizador de RC_STRETCHBLT .

Requisitos

Cabeçalho: afxwin.h

Consulte também

Referência

CDC Class

Gráfico de hierarquia

CDC::BitBlt

CDC::GetDeviceCaps

CDC::SetStretchBltMode

StretchBlt