Artigo: 94326 - Última revisão: terça-feira, 21 de Novembro de 2006 - Revisão: 4.5

SeeDIB.exe mostra 16 e 32 bits - por - formatos de mapa de bits de PEL

Dica do SistemaEste artigo aplica-se a um sistema operativo diferente do que está a utilizar. Foi desactivado o conteúdo do artigo, que pode não ser relevante para si.

Nesta página

Expandir tudo | Reduzir tudo

Sumário

SeeDIB.exe é uma aplicação de exemplo que demonstra como carregar, visualizar e guardar 1, 4, 8, 16, 24 e 32 bits-por-pixels (formatos de mapa de bits independente de dispositivo (DIB). Além disso, SeeDIB.exe demonstra um método simples de criar uma paleta optimizada para apresentação DIBs com mais de 8 bits-por-pixels em dispositivos de 8 bits por pixel.

Nota Para minimizar a perda de cor, SeeDIB utiliza CreateDIBSection() para efectuar conversões entre DIBs não comprimidos que têm mais de 8 bits por pixel. Esta função não está disponível no Windows NT 3.1.

Mais Informação

O ficheiro seguinte está disponível para transferência a partir do Centro de transferências da Microsoft:
SeeDIB.exe (http://download.microsoft.com/download/platformsdk/sample56/1/w95/en-us/seedib.exe)
Para obter informações adicionais sobre como transferir ficheiros de suporte da Microsoft, clique no número de artigo que se segue para visualizar o artigo na Microsoft Knowledge Base:
119591  (http://support.microsoft.com/kb/119591/EN-US/ ) Como obter ficheiros de suporte da Microsoft a partir de serviços on-line
Microsoft procedeu de vírus neste ficheiro. Microsoft utilizou o mais recente software de detecção de vírus que estava disponível na data em que o ficheiro foi publicado. O ficheiro é alojado em servidores com segurança avançada que o ajudam a impedir alterações não autorizadas ao ficheiro. Para DIBs, os formatos de 16 e 32 bits contêm três MÁSCARAS de DWORD no membro bmiColors da estrutura BITMAPINFO . Estes máscaras especificar quais os bits da pel correspondem às que cor.

As máscaras de três têm de bits contíguos e respectiva ordem é considerada R, G, B (bits alta para baixas bits). A ordem das três máscaras na tabela de cores também deve ser primeiro vermelho, em seguida, verde e azul (RGB). Desta forma, o programador pode especificar um máscara indicando quantos tons de cada cor RGB estará disponíveis para os mapas de bits criados com CreateDIBitmap() . Para DIBs de 16 bits por pixel, CreateDIBitmap() assume o formato RGB555. Para DIBs de 32 bits por pixel, CreateDIBitmap() assume um formato RGB888.

Nota : O DIB motor no Windows 95 só suporta RGB555 e RGB565 para DIBs de 16 bits e apenas RGB888 para DIBs de 32 bits.

Exemplo

As máscaras de formato RGB555 aspecto o seguinte exemplo:
   0x00007C00  red   (0000 0000 0000 0000 0111 1100 0000 0000)
   0x000003E0  green (0000 0000 0000 0000 0000 0011 1110 0000)
   0x0000001F  blue  (0000 0000 0000 0000 0000 0000 0001 1111)
				
Nota : para 16 bits-por-pel, a metade superior dos DWORDs são sempre zero.

As máscaras de formato RGB888 aspecto o seguinte exemplo:
   0x00FF0000  red   (0000 0000 1111 1111 0000 0000 0000 0000)
   0x0000FF00  green (0000 0000 0000 0000 1111 1111 0000 0000)
   0x000000FF  blue  (0000 0000 0000 0000 0000 0000 1111 1111)
				

Utilização

Quando utilizar formatos de 16 e 32 bits, também existem determinados campos da estrutura BITMAPINFOHEADER que deve ser definido para os valores correctos:

  1. O membro biCompression tem de ser definido para BI_RGB ou BI_BITFIELDS. A utilização de BI RGB indica que nenhumas máscaras de bits são incluídas na tabela de cores e que o formato predefinido (RGB555 para 16bpp) e RGB888 para 32bpp está implícita. Utilizar BI_BITFIELDS indica que existem máscaras (campos de bits) especificadas na tabela cor.
  2. Como com formatos de 24 bits por pixel, o membro biClrUsed Especifica o tamanho da tabela de cores utilizado para optimizar o desempenho das paletas de cores do Windows. Se o biCompression estiver definido como BI_BITFIELDS, a paleta ideal inicia imediatamente a seguir as máscaras DWORD três. Note que uma paleta ideal é opcional e muitas aplicações irão ignorá-la.

O Windows 95

No Windows 95, se for definido o sinalizador BI_BITFIELDS, em seguida, tem de especificar uma máscara de cor e tem de ser um dos seguintes procedimentos:
   Resolution    Bits Per Color    Color Mask
   -------------------------------------------------------------
   16bpp         5,5,5             0x00007c00 0x000003e0 0x0000001f
   16bpp         5,6,5             0x0000f800 0x000007e0 0x0000001f
   32bpp         8,8,8             0x00ff0000 0x0000ff00 0x000000ff
				
máscaras de cor definida pelo utilizador não estão disponíveis no Windows 95.

A informação contida neste artigo aplica-se a:
  • Microsoft Win32 Application Programming Interface nas seguintes plataformas
    • Microsoft Windows 95
    • Microsoft Windows NT Server 3.5
    • Microsoft Windows NT Server 3.51
    • Microsoft Windows NT Workstation 3.5
    • Microsoft Windows NT Workstation 3.51
    • Microsoft Windows 2000 Advanced Server
    • Microsoft Windows 2000 Server
    • Microsoft Windows 2000 Professional Edition
    • Microsoft Windows XP Home Edition
    • Microsoft Windows XP Professional Edition
Palavras-chave: 
kbmt kbdownload kbdownload kbbitmap kbfile kbgdi kbinfo kbsample KB94326 KbMtpt
Tradução automáticaTradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 94326  (http://support.microsoft.com/kb/94326/en-us/ )