Portable bitmap format (black and white)

.pbm · Obrázky

PBM (Portable Bitmap) je nejspíš nejjednodušší obrázkový formát, který se dodnes běžně používá: jeden bit na pixel, černá nebo bílá, a před tím hlavička o pár znacích. Patří do rodiny Netpbm spolu s PGM pro odstíny šedi a PPM pro barvy. Lidé si soubory PBM posílají málokdy, vyrábějí je programy: skenovací nástroje v Linuxu, OCR a faxové řetězce, vektorizér potrace, školní úlohy z programování nebo skripty, které prostě potřebovaly formát, jaký se zapíše nejsnáz.

Původ

Jef Poskanzer navrhl PBM v 80. letech tak, aby obrázek prošel uvnitř e-mailu, v době, kdy přílohy ještě neexistovaly. Proto je původní varianta čistý text ASCII. V roce 1988 vydal sadu převodníků Pbmplus a do konce téhož roku přidal formáty PGM a PPM. Poslední vydání Pbmplus vyšlo 10. prosince 1991. Od roku 1993 projekt pokračuje jako Netpbm, který od roku 1999 spravuje Bryan Henderson. Norma ISO ani u IANA registrovaný typ MIME neexistují, závazná je specifikace Netpbm a obvyklý typ je image/x-portable-bitmap.

Jak PBM funguje

  • Textové PBM (P1) ukládá každý pixel jako znak 0 nebo 1. Text P1 3 2 1 0 1 0 1 0 je úplný platný obrázek 3 × 2 pixely. Řádek smí mít nejvýš 70 znaků.
  • Binární PBM (P4) skládá osm pixelů do bajtu a každý řádek doplní na celé bajty. Hlavička zůstává textová: magické číslo, šířka, výška, případně komentáře za znakem #.
  • 1 znamená černou, 0 bílou. Většina ostatních formátů včetně WBMP to má obráceně. Vlastní dekodér, který na to zapomene, vyrobí negativ.
  • Žádná komprese, paleta, údaj o dpi, metadata ani průhlednost. Stránka A4 při 300 dpi (2480 × 3508 pixelů) zabere jako P4 asi 1,1 MB, jako P1 nejméně osmkrát víc.
  • Od roku 2000 smí binární soubor obsahovat několik obrázků za sebou, většina programů ale přečte jen první.

Jak otevřít soubor PBM

  • Windows: IrfanView, XnView MP, GIMP nebo Photoshop. Vestavěné Fotky PBM nepřečtou.
  • macOS: GIMP nebo XnView MP.
  • Linux: většina prohlížečů obrázků v GNOME i KDE formáty Netpbm čte přímo, na příkazové řádce je převede balík Netpbm (pnmtopng).
  • Textový soubor P1 otevřete i v libovolném textovém editoru a uvidíte v něm nuly a jedničky.

Časté potíže s PBM

Obrázek PBM je inverzní (negativ)

Program nebo váš kód bere 1 jako bílou. V PBM je 1 černá.

Z fotky jsou po převodu do PBM černé fleky

PBM zná jen dvě hodnoty. Náš převodník obrázek převede do šedi, roztáhne kontrast a rozdělí ho na hranici 50 % jasu, bez ditheringu. Pro text, podpisy, perokresbu a QR kódy to funguje dobře, pro fotografie špatně. Fotky nechte v PNG, případně použijte šedotónové PGM.

Soubor .pbm začíná P2, P5 nebo P6

Jde o šedotónová nebo barevná data se špatnou příponou, což se stává u nástrojů, které zapisují libovolný typ Netpbm. Náš převodník přečte všechny varianty Netpbm bez ohledu na příponu.

Jiný program odmítá PBM z mého kódu

Obvyklé příčiny: chybí mezera nebo konec řádku za výškou, řádky v P4 nejsou doplněné na celé bajty, nebo je komentář až uvnitř obrazových dat.

Převod PBM

Převod PBM do PNG, TIFF nebo GIF je bezeztrátový a výsledek otevře každý program. Převod PBM do PDF je nejrychlejší cesta, jak ze skenu udělat dokument. Převod PBM do SVG obkreslí pixely vektorovými křivkami. Mimochodem, když u nás převádíte do SVG jakýkoli rastrový obrázek, převodník z něj nejdřív udělá černobílé PBM a teprve to obkreslí. Opačným směrem je převod do PBM spolehlivý způsob, jak vynutit čistou černou a bílou, třeba před přípravou 1bitového loga pro tiskárnu etiket ve formátu PCX.

PBM v kostce

AutorJef Poskanzer, dnes projekt Netpbm
Vznik80. léta; Pbmplus 1988, Netpbm 1993
Specifikacedokumentace Netpbm, bez normy ISO
Typrastrový obrázek, 1 bit na pixel
Kompresežádná
VariantyP1 (text), P4 (binární)
Typické použitískenování a OCR, vektorizace, výuka, skripty

Specifikace a historie (anglicky): specifikace formátu PBM a historie projektu Netpbm.

Formát PBM umíme převést do

Dokumenty

PDF TXTPDF/A

Obrázky

JPG PNGWEBP GIF TIFFHEICAVIFJXLPSDICOAAIAPNGARTAVS BMP CINCURDCMDCXDDSDPXFF FITSFL32 HDRHRZJP2JBIGJNGJPCMNGMTVOTBPALMPAMPCD PCXPFMPGMPGXPHMPICTPPMPSBPTIFQOIRASRGFSGISIXELSUN TGAVICARVIFFVIPS WBMPXBMXPMXWD

Vektorová grafika

SVG EPSEMF PSFXGHPGLPOVSIFSVGZWMFXAML

Elektronické knihy

EPUB MOBI AZW3 FB2CBZDJVUHTMLZ LIT LRF OEB PDB TCRTXTZCB7CBT