A Aldeia Numaboa ancestral ainda está disponível para visitação. É a versão mais antiga da Aldeia que eu não quis simplesmente descartar depois de mais de 10 milhões de pageviews. Como diz a Sirley, nossa cozinheira e filósofa de plantão: "Misericórdia, ai que dó!"

Se você tiver curiosidade, o endereço é numaboa.net.br.

Leia mais...

Informática Numaboa - Referências

Formato BMP

Qua

30

Mar

2005


05:41

(22 votos, média 3.95 de 5) 


O formato bitmap ou BMP é um dos mais antigos, criado para o Windows pela Microsoft e para o OS/2 pela IBM. Como estes sistemas dependem essencialmente da plataforma de hardware, este formato foi ajustado para atender processadores Intel. Isto significa que os dados armazenados num arquivo BMP estão em formato Little Endian, ou seja, os bytes estão na mesma ordem em que o processador armazena valores.

Bitmap significa mapa de bits e a forma como os dados das imagens BMP são armazenados é bit a bit. Os dados de cada linha da imagem precisam estar ajustados em 32 ou múltiplos de 32 bits (dword). Caso o número de bits não preencha esta condição, os bits faltantes são preenchidos com zeros. Uma outra característica dos BMP é que os dados são armazenados de trás para frente, ou seja, os bits da primeira linha da imagem encontram-se no fim da área de dados e os bits da última linha da imagem se encontram no início da área de dados.

O formato BMP possui quatro versões, duas da MS (antiga e nova) e duas da IBM. As quatro serão descritas neste artigo.

CONTEÚDO BMP

A tabela a seguir contém uma descrição do conteúdo de arquivos BMP. Ela mostra todos os campos, seus deslocamentos (offset) no arquivo, seus tamanhos e seus conteúdos.

Offset Campo Tamanho Conteúdo
0000h Identificador 2 bytes Os caracteres que identificam o BMP. O conteúdo pode ser um dos seguintes:
'BM' - Windows 3.1x, 95, NT, ...
'BA' - OS/2 Bitmap Array (matriz bitmap)
'CI' - OS/2 Color Icon (ícone colorido)
'CP' - OS/2 Color Pointer (ponteiro colorido)
'IC' - OS/2 Ícone
'PT' - OS/2 Ponteiro
0002h Tamanho do arquivo 1 dword (4 bytes) O tamanho total do arquivo
0006h Reservado 1 dword (4 bytes) Reservado para uso futuro
000Ah Offset dos dados do bitmap 1 dword (4 bytes) Distância do início do arquivo até o início da área de dados
000Eh Tamanho do cabeçalho 1 dword (4 bytes) Comprimento do cabeçalho de informações usado para descrever as cores e a compressão. Os seguintes tamanhos são possíveis:
28h - Windows 3.1x, 95, NT, ...
0Ch - OS/2 1.x
F0h - OS/2 2.x
0012h Largura 1 dword (4 bytes) Largura (horizontal) do bitmap em pixels
0016h Altura 1 dwrod (4 bytes) Altura (vertical) do bitmap em pixels
001Ah Planos 1 dword (4 bytes) Número de planos do bitmap
001Ch Bits por pixel 1 dword (4 bytes) Bits por pixel usados para armazenar as informações da paleta. Também identifica, de forma indireta, o número de cores possíveis. Os valores podem ser:
1 - Bitmap monocromático (preto e branco)
4 - Bitmap de 16 cores
8 - Bitmap de 256 cores
16 - Bitmap de 16bits (high color)
24 - Bitmap de 24bits (true color)
32 - Bitmap de 32bits (true color)
001Eh Compressão 1 dword (4 bytes) Especificações da compressão. Os valores possíveis são:
0 - nenhuma (Também identificada por BI_RGB)
1 - RLE 8 bits/pixel (Também identificada por BI_RLE4)
2 - RLE 4 bits/pixel (Também identificada por BI_RLE8)
3 - Bitfields (Também identificada por BI_BITFIELDS)
0022h Tamanho da área de dados 1 dword (4 bytes) Tamanho da área de dados do bitmap. Este número precisa ser arredondado para o próximo limite de 4 bytes.
0026h Resolução H 1 dword (4 bytes) A resolução horizontal expressa em pixels por metro
002Ah Resolução V 1 dword (4 bytes) A resolução vertical expressa em pixels por metro
002Eh Cores 1 dword (4 bytes) Número de cores usadas neste bitmap. Para um bitmap de 8 bits/pixel, este valor será 100h ou 256
0032h Cores importantes 1 dword (4 bytes) Número de cores importantes. Este número será igual ao número de cores se todas as cores forem importantes
0036h Paleta n * 4 bytes As especificações da paleta. Para cada entrada na paleta, quatro bytes são usados para descrever os valores RGB da cor da seguinte forma:
1 byte para o componente azul
1 byte para o componente verde
1 byte para o componente vermelho
1 byte preenchedor cujo valor é 0 (zero)
0436h Área de dados x bytes Dependendo das especificações de compressão, este campo contém todos os bytes de dados do bitmap que representam índices na paleta de cores.

OBSERVAÇÃO: Os bitmaps de 24 bits possuem no máximo 2^24 cores e o campo Paleta não possui entradas. Na área de dados, um conjunto de 3 bytes representa as intensidades relativas de azul, verde e vermelho de cada um dos pixels da imagem.

казино онлайн рулетка на деньгикисточка для бровейлобановский александр игоревичрецептысоздание сайтов в полтавелобановский александротзывы nikas

Informações adicionais