Função StretchDIB (vfw.h)
A função StretchDIB copia um bitmap independente do dispositivo de um local de memória para outro e redimensiona a imagem para se ajustar ao retângulo de destino.
Sintaxe
void StretchDIB(
LPBITMAPINFOHEADER biDst,
LPVOID lpDst,
int DstX,
int DstY,
int DstXE,
int DstYE,
LPBITMAPINFOHEADER biSrc,
LPVOID lpSrc,
int SrcX,
int SrcY,
int SrcXE,
int SrcYE
);
Parâmetros
biDst
Ponteiro para uma estrutura BITMAPINFOHEADER que descreve o bitmap de destino.
lpDst
Ponteiro para o buffer de memória que receberá os bits de pixel copiados.
DstX
Coordenada X da origem do retângulo de destino.
DstY
Coordenada Y da origem do retângulo de destino.
DstXE
Largura, em pixels, do retângulo de destino.
DstYE
Altura, em pixels, do retângulo de destino.
biSrc
Ponteiro para uma estrutura BITMAPINFOHEADER que descreve o bitmap de origem.
lpSrc
Ponteiro para os dados de bitmap de origem.
SrcX
Coordenada X da origem do retângulo de origem.
SrcY
Coordenada Y da origem do retângulo de origem.
SrcXE
Largura, em pixels, do retângulo de origem.
SrcYE
Altura, em pixels, do retângulo de origem.
Valor retornado
Nenhum
Comentários
O tamanho do buffer de destino deve ser grande o suficiente para acomodar qualquer bytes de alinhamento no final de cada linha de pixel.
Essa função não fará nada se biSrc e biDst tiverem valores diferentes para biBitCount ou se o valor de biSrc. biBitCount não é igual a 8, 16 ou 24.
Essa função não executa nenhum dithering ou outra suavização. Os valores de pixel são simplesmente descartados ou duplicados em uma base linha por linha, coluna por coluna.
Essa função não faz nenhum processamento especial com base na codificação de pixels, exceto para calcular o número de bits por pixel. Em particular, essa função não gerará resultados corretos quando os pixels forem codificados em grupos de mais de 1 pixel, como no caso de um formato YUV em que você e V são dizimados e, portanto, não são representados igualmente em cada pixel.
Antes de incluir vfw.h, você deve adicionar a seguinte linha ao seu código:
#define DRAWDIB_INCLUDE_STRETCHDIB
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | vfw.h |
Biblioteca | Vfw32.lib |
DLL | Msvfw32.dll |