Bitmap portátil (.pbm)

Padrão Padrão

Portable Bitmap Format (PBM) é o formato gráfico básico de preto e branco de 1 bit do conjunto Netpbm, criado para ser simples, legível por pessoas e fácil de gerar por programas.

Inspeção e metadados

Sistemas operacionais e analisadores de arquivos identificam arquivos PBM pela sequência inicial de bytes:

Selecione ou solte os arquivos aqui

Privado - os arquivos nunca saem do seu dispositivo

ou colar Ctrl+V
Garantia de privacidade sem transmissão pela rede 0 bytes enviados a servidores externos. Todo o processamento ocorreu localmente no ambiente isolado do navegador.

Assinatura do arquivo em bytes (magic bytes)

Sistemas operacionais e analisadores de arquivos identificam arquivos PBM pela sequência inicial de bytes:

ASSINATURA HEXADECIMAL (DESLOCAMENTO 0):

50 31 / 50 34

REPRESENTAÇÃO ASCII: P1 / P4

Padronização: Padrão da biblioteca Netpbm

Especificações técnicas

Estrutura do contêinerFormato Netpbm em ASCII (P1) ou binário (P4), com largura, altura e uma matriz de pixels de 1 bit
CompressãoRepresentação em ASCII ou dados binários brutos, sem compactação
Ordem dos bytes (endianness)Empacotamento de bits em big-endian (no modo binário P4)
Espaços de corMonocromático (preto e branco de 1 bit)
Canais e EstruturaUm canal monocromático de 1 bit (0 = branco, 1 = preto)
Dimensões MáximasPraticamente ilimitadas (dimensões numéricas em ASCII)
TransparênciaNenhuma
Streaming e ProgressivoProcessamento sequencial em fluxo, linha por linha

Matriz de comparação técnica: PBM e formatos concorrentes

Atributo técnicoPBM (Atual)PGMPPMBMP
Profundidade de corMonocromático de 1 bit (somente preto e branco)Escala de cinza de 8 a 16 bitsCor RGB de 24 a 48 bitsRGBA de 1 a 32 bits
Formato da mesma família NetpbmPBM (Bitmap Portátil)PGM (Portable Graymap, mapa de tons de cinza portátil)PPM (Portable Pixmap, mapa de pixels portátil)Formato que não é Netpbm
Bytes mágicosP1 (ASCII) / P4 (binário)P2 (ASCII) / P5 (Binário)P3 (ASCII) / P6 (Binário)BM (0x42 0x4D)
Uso principalProcessamento de documentos com OCR e faxImagens médicas e escala de cinzaEducação em computação gráficaGráficos de desktop do Windows

Modos comuns de corrupção e guia de recuperação com editor hexadecimal

A imagem é exibida com linhas horizontais distorcidas ou pixels ausentes.

Causa principal: Comentários sem escape (#) ou falta de espaços separadores no cabeçalho ASCII.

Recuperação: Valide a formatação do cabeçalho e as quebras de linha com o conversor Netpbm do File2File.app.

Análise de segurança e vetores de ataque a analisadores

Analisadores PBM que leem dimensões em ASCII podem sofrer estouros de inteiro quando elas ultrapassam os limites da plataforma.

Vetores de ataque conhecidos

  • Estouro de inteiro ao alocar o buffer de bits com base na largura multiplicada pela altura.
  • Leitura além dos limites do buffer ao processar sequências malformadas de espaços em branco ASCII.
  • Negação de serviço causada por declarações de dimensões enormes em arquivos pequenos.

Melhores práticas defensivas: Defina limites máximos para as dimensões PBM e valide os limites do buffer de bits antes da decodificação.

Origens históricas e marcos

1993O Netpbm reuniu PBM, PGM e PPM num conjunto portátil de ferramentas de imagem usado em Unix e noutros sistemas.
1991O modo binário PBM (byte mágico P4) é introduzido para reduzir o espaço de armazenamento.
1988Jef Poskanzer cria o PBM (byte mágico P1) para transmitir imagens bitmap por e-mail.

Principais vantagens

  • A estrutura compacta do PBM pode facilitar a implementação de leitores e gravadores básicos, mas a quantidade de código depende da linguagem e dos requisitos.
  • O modo ASCII (P1) é totalmente legível por pessoas e pode ser criado ou editado em editores de texto comuns, como o Bloco de Notas.
  • Formato universal de intercâmbio em projetos acadêmicos de visão computacional e processamento de documentos com OCR.

Limitações técnicas e desvantagens

  • Limitado a imagens monocromáticas de 1 bit, sem tons de cinza nem cores.
  • O modo ASCII é muito ineficiente: usa um byte de texto ASCII (0 ou 1) para cada bit da imagem.
  • Não oferece metadados, perfis de cor nem suporte a camadas.

Curiosidades técnicas

  • No PBM ASCII (P1), o pixel branco é representado por 0 e o preto por 1, o que contrasta com as convenções RGB atuais.
  • É possível criar uma imagem PBM válida digitando P1 2 2 1 0 0 1 em um arquivo de texto e salvando-o.
  • O formato foi criado para que cientistas da computação compartilhassem documentos digitalizados em grupos de discussão da Usenet.

Perguntas técnicas frequentes

Qual é a diferença entre PBM, PGM e PPM?

O PBM é monocromático de 1 bit (somente preto e branco), o PGM usa escala de cinza e o PPM armazena cores RGB de 24 bits.

O que significam P1 e P4 nos arquivos PBM?

P1 indica que a imagem está armazenada como texto ASCII simples; P4 indica que ela está armazenada em bytes binários compactos.

Como posso converter um arquivo PBM para PNG?

Você pode converter arquivos PBM em imagens PNG ou JPG modernas diretamente no navegador, usando o File2File.app e sem enviar dados a nenhum servidor.