Che cos'è il formato di file PNM?
.pnm (Portable Anymap) è un'estensione ombrello che copre tre sotto-formati di immagini raster non compresse correlati della famiglia Netpbm: PBM (Portable Bitmap, bianco e nero a 1 bit), PGM (Portable Graymap, scala di grigi) e PPM (Portable Pixmap, a colori). Il sottotipo effettivo di qualsiasi file .pnm è identificato dai suoi primi due byte: da P1 a P3 per le varianti ASCII («plain») e da P4 a P6 per le varianti binarie («raw»).
Jef Poskanzer creò l'originale formato PBM nel 1988 come parte del suo toolkit Pbmplus, aggiungendo PGM e PPM poco dopo. I formati sono stati progettati per essere la rappresentazione d'immagine lossless più semplice possibile, capace di sopravvivere al transito su collegamenti email a 7 bit. Le varianti ASCII memorizzano i valori dei pixel come numeri interi decimali separati da spazi bianchi dopo un'intestazione in testo semplice; le varianti binarie impacchettano i byte grezzi immediatamente dopo l'intestazione per un'archiviazione più compatta.
La profondità del colore varia da 1 bpp (PBM) a 16 bpp per canale (PGM/PPM con maxval a 16 bit), arrivando fino a 48 bpp per le immagini a colori. Il formato non definisce alcuna compressione, crittografia, profilo colore, dati EXIF o miniature - è deliberatamente minimale.
PNG è il sostituto moderno per l'archiviazione lossless, ma i file .pnm rimangono un formato intermedio onnipresente nelle pipeline di elaborazione delle immagini Unix. ImageMagick, GIMP, FFmpeg e praticamente tutti gli strumenti di immagine Unix leggono e scrivono il formato nativamente.
Sicurezza e incolumità
RISCHIO: LOWPNM/PBM/PGM/PPM sono tra i formati d'immagine più semplici - intestazione in testo semplice più dati pixel grezzi (o valori ASCII). Nessuna esecuzione di codice, nessuno scripting, nessun exploit di compressione. Molto sicuro da aprire. Il rischio principale è la dimensione del file non compresso banalmente grande per immagini ad alta risoluzione.
Dettagli del formato
in sintesiProgrammi che aprono file PNM
Dettagli tecnici
specifiche approfondite| Sotto-formati | Ombrello per PBM (P1/P4, 1-bit), PGM (P2/P5, scala di grigi) e PPM (P3/P6, colori) |
| Magic bytes | Primi 2 byte: `P` (0x50) + cifra da `1` a `6` (0x31-0x36) - identifica il sottotipo e la codifica ASCII rispetto a quella binaria |
| Varianti ASCII (P1-P3) | Valori dei pixel memorizzati come numeri interi decimali separati da spazi bianchi - leggibili dall'uomo e sicuri per sistemi a 7 bit |
| Varianti binarie (P4-P6) | Byte dei pixel grezzi impacchettati immediatamente dopo l'intestazione ASCII - più compatti, stessi dati logici |
| Compressione | Nessuna - i dati dei pixel sono memorizzati non compressi in tutte le varianti |
| Profondità colore | 1 bpp (PBM); 8 o 16 bpp per canale in scala di grigi (PGM); 24 o 48 bpp a colori (PPM con maxval a 16 bit) |
| Struttura intestazione | Campi ASCII: magic number, righe di commento `#` opzionali, larghezza, altezza, quindi maxval (assente per P1/P4 a 1 bit) |
| Ordine dei byte | Big-endian per campioni a 16 bit nelle varianti binarie P5/P6; non applicabile per formati a 8 bit o ASCII |
| Vincolo maxval | Deve essere 1-65.535 (uint16); i valori ≤ 255 utilizzano 1 byte per campione nelle modalità binarie P4-P6 |
| Dimensioni | Nessun massimo definito; limitato in pratica dalla memoria di sistema disponibile |
| Tipo MIME | `image/x-portable-anymap`; sottotipi: `image/x-portable-bitmap`, `image/x-portable-graymap`, `image/x-portable-pixmap` |
| Estensione PAM | P7 (`.pam`, Portable Arbitrary Map) estende PNM a conteggi di canali e profondità di bit arbitrari |
| Uso tipico | Formato intermedio per pipeline di elaborazione immagini Unix; I/O nativo per ImageMagick, GIMP, FFmpeg e la maggior parte degli strumenti d'immagine Unix |
| Rilasciato | 1988 (Jef Poskanzer's Pbmplus toolkit; PBM first, PGM and PPM by year-end) |
| Ultima versione | Netpbm 11.x (2020s); format spec stable since early 1990s |
| Standard aperto | Sì · royalty-free |
| Specifica | netpbm.sourceforge.net |
Conversioni PNM
Domande e risposte della community
chiesto dagli utentiAncora nessuna domanda - sii il primo a chiedere informazioni sui file PNM.