Compartilhar via


Função EngCreateBitmap (winddi.h)

A função EngCreateBitmap solicita que a GDI crie e gerencie um bitmap.

Sintaxe

ENGAPI HBITMAP EngCreateBitmap(
       SIZEL sizl,
       LONG  lWidth,
  [in] ULONG iFormat,
  [in] FLONG fl,
  [in] PVOID pvBits
);

Parâmetros

sizl

Especifica uma estrutura SIZEL cujos membros contêm a largura e a altura, em pixels, do bitmap a ser criado. Uma estrutura SIZEL é idêntica a uma estrutura SIZE .

Se pvBits não for NULL, esse valor deverá representar todos os pixels visíveis no dispositivo, permitindo que o dispositivo mantenha a memória fora da tela.

lWidth

Especifica a largura de alocação do bitmap, que é o número de bytes que devem ser adicionados a um ponteiro para mover uma linha de verificação para baixo.

[in] iFormat

Especifica o formato do bitmap em termos do número de bits de informações de cor por pixel necessários. Esse parâmetro pode usar um dos valores a seguir:

Valor Significado
BMF_1BPP Monocromático
BMF_4BPP 4 bits por pixel
BMF_8BPP 8 bits por pixel
BMF_16BPP 16 bits por pixel
BMF_24BPP 24 bits por pixel
BMF_32BPP 32 bits por pixel
BMF_4RLE 4 bits por pixel; comprimento de execução codificado
BMF_8RLE 8 bits por pixel; comprimento de execução codificado

[in] fl

É uma máscara de bits que especifica propriedades sobre o bitmap a ser criado. Esse parâmetro pode ser zero ou qualquer combinação dos seguintes valores:

Valor Significado
BMF_NOZEROINIT A GDI não inicializará zero o bitmap ao alocá-lo. Esse sinalizador é verificado somente quando pvBits é NULL.
BMF_TOPDOWN A primeira linha de verificação representa a parte superior do bitmap. Observe que bitmaps de formato padrão têm a primeira linha de verificação na parte inferior por padrão.
BMF_USERMEM A GDI alocará a memória para o bitmap da memória do usuário. Por padrão, a memória é alocada do espaço de endereço do kernel. Esse sinalizador deve ser especificado somente quando o bitmap que está sendo criado não será usado por outros processos. A memória do usuário não pode ser passada para EngWritePrinter pelo driver da impressora.

[in] pvBits

Ponteiro para a primeira linha de verificação do bitmap que deve ser criado. Se esse parâmetro for NULL, a GDI alocará o espaço de armazenamento para os pixels do bitmap. Se pvBits não for NULL, será um ponteiro para o buffer para o bitmap.

Valor retornado

Se a função for concluída com êxito, o valor retornado será um identificador que identifica o bitmap criado. Caso contrário, o valor retornado será 0. EngCreateBitmap não registra um código de erro.

Comentários

Opcionalmente, o armazenamento para o bitmap pode ser fornecido pelo driver.

O driver deve associar o bitmap criado como uma superfície chamando EngAssociateSurface antes de retornar de DrvEnableSurface.

O bitmap deve ser excluído usando EngDeleteSurface quando não for mais necessário.

Os drivers de exibição do buffer de quadro devem usar o parâmetro pvBits , permitindo que a GDI faça a maioria dos desenhos diretamente na exibição.

Requisitos

   
Cliente mínimo com suporte Disponível no Windows 2000 e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Universal
Cabeçalho winddi.h (inclua Winddi.h)
Biblioteca Win32k.lib
DLL Win32k.sys

Confira também

DrvCreateDeviceBitmap

EngAllocUserMem