Portable Bitmap Format (.pbm)

Netpbm Standaard

Portable Bitmap Format (PBM) is het basale 1-bits zwart-witformaat van de Netpbm-suite, ontworpen voor maximale eenvoud, leesbaarheid voor mensen en programmatische generatie.

Inspecteren en metadata

Besturingssystemen en bestandsanalysators herkennen PBM-bestanden aan de hand van de eerste binaire bytesequentie:

Selecteer of sleep bestanden hierheen

Privé - bestanden verlaten uw apparaat niet

of plak Ctrl+V
Privacygarantie zonder netwerktransmissie: 0 bytes geüpload naar externe servers. Alle verwerking vond lokaal plaats in uw browser-sandbox.

Bestandshandtekening op byteniveau (magic bytes)

Besturingssystemen en bestandsanalysators herkennen PBM-bestanden aan de hand van de eerste binaire bytesequentie:

HEX-HANDTEKENING (OFFSET 0):

50 31 / 50 34

ASCII-WEERGAVE: P1 / P4

Standaardisatie: Netpbm Library Standard

Technische specificaties

ContainerarchitectuurASCII (P1) of binair (P4) Netpbm-formaat waarin breedte, hoogte en een 1-bits pixelarray worden gespecificeerd
CompressieOngecomprimeerde ruwe binaire of ASCII-tekenweergave
Bytevolgorde (endianness)Big-Endian bit-packing (in P4 binaire modus)
KleurruimtenMonochroom (1-bits zwart-wit)
Kanalen en structuur1 kanaal, 1-bits monochroom (0 = wit, 1 = zwart)
Maximale afmetingenPraktisch onbeperkt (ASCII numerieke afmetingstekenreeks)
TransparantieGeen
Streaming en progressiefSequentiële streaming, rij voor rij

Technische vergelijkingsmatrix: PBM versus concurrenten

Technisch kenmerkPBM (Huidig)PGMPPMBMP
Kleurdiepte1-bits monochroom (alleen Z&W)8-bits tot 16-bits grijstinten24-bits tot 48-bits RGB-kleur1-bits tot 32-bits RGBA
Netpbm-tegenhangerPBM (Portable Bitmap)PGM (Portable Graymap)PPM (Portable Pixmap)Niet-Netpbm-formaat
Bestandshandtekening (magic bytes)P1 (ASCII) / P4 (binair)P2 (ASCII) / P5 (binair)P3 (ASCII) / P6 (binair)BM (0x42 0x4D)
Primair gebruikOCR- en faxdocumentverwerkingMedische beeldvorming en grijstintenEducatie in computergraphicsWindows-bureaubladgraphics

Veelvoorkomende beschadigingen en gids voor hex-herstel

Afbeelding wordt weergegeven met schuine horizontale rijen of ontbrekende pixels.

Oorzaak: Misvormd commentaar of een ontbrekend witruimteteken in de ASCII-header.

Herstel: Controleer de opmaak van de header en de regeleinden met de Netpbm Converter van File2File.app.

Beveiligingsanalyse en aanvalsvectoren voor parsers

PBM-parsers die afmetingen als ASCII-tekenreeksen lezen, zijn vatbaar voor integeroverflows als de afmetingen de limieten van het platform overschrijden.

Bekende aanvalsvectoren

  • Integeroverflow tijdens de toewijzing van de bitbuffer voor breedte * hoogte.
  • Bufferoverread bij het lezen van onjuiste ASCII-witruimtestromen.
  • Denial of service door buitensporig grote afmetingen in kleine bestanden.

Aanbevolen beveiligingspraktijken: Stel een limiet in voor de maximaal toegestane PBM-dimensies en valideer de grenzen van de bitbuffer vóór het decoderen.

Historische oorsprong en mijlpalen

1993Netpbm bracht PBM, PGM en PPM samen als draagbare afbeeldingstools die op Unix en andere systemen werden gebruikt.
1991Binaire modus van PBM (magic byte 'P4') geïntroduceerd om de opslagefficiëntie te verbeteren.
1988Jef Poskanzer ontwerpt PBM (magic byte 'P1') om bitmaps over e-mailnetwerken te verzenden.

Belangrijkste voordelen

  • De compacte structuur kan het implementeren van eenvoudige PBM-lezers en -schrijvers rechttoe rechtaan maken, hoewel de codelengte afhankelijk is van taal en vereisten.
  • ASCII-modus (P1) is 100% leesbaar voor mensen en kan worden gemaakt of bewerkt in standaard teksteditors zoals Kladblok.
  • PBM kan worden gebruikt in sommige workflows voor beeldverwerking, computervisie en OCR, met name waar een eenvoudige monochrome bitmap handig is.

Technische beperkingen

  • Strikt beperkt tot 1-bits monochroom (geen grijstinten of kleur).
  • ASCII-modus is uiterst inefficiënt en gebruikt één byte ASCII-tekst ('0' of '1') per enkele bit afbeeldingsdata.
  • Mist metadata, kleurprofielen of laagondersteuning.

Interessante technische weetjes

  • In ASCII PBM ('P1') wordt een witte pixel weergegeven door '0' en een zwarte pixel door '1' (contra-intuïtief ten opzichte van moderne RGB-conventies).
  • U kunt letterlijk een geldige PBM-afbeelding maken door 'P1 2 2 1 0 0 1' in een tekstbestand te typen en dit op te slaan.
  • Het formaat is uitgevonden zodat computerwetenschappers gescande documenten konden delen via Usenet-nieuwsgroepen.

Veelgestelde technische vragen

Wat is het verschil tussen PBM, PGM en PPM?

PBM is monochroom van 1 bit (alleen zwart-wit), PGM bevat grijswaarden en PPM bevat volledige 24-bits RGB-kleur.

Wat betekenen P1 en P4 in PBM-bestanden?

'P1' geeft aan dat de afbeelding is opgeslagen in platte ASCII-tekst, terwijl 'P4' aangeeft dat de afbeelding is opgeslagen als compacte binaire bytes.

Hoe kan ik een PBM-bestand converteren naar PNG?

U kunt PBM-bestanden rechtstreeks in uw browser converteren naar moderne PNG- of JPG-afbeeldingen met File2File.app, zonder gegevens naar een server te uploaden.