Netpbm
# Netpbm

Netpbm è un insieme di strumenti o toolkit per la manipolazione e conversione tra diversi formati file delle immagini. Nel toolkit sono presenti oltre trecento strumenti diversi che funzionano per circa 100 diversi formati grafici. Netpbm è in grado, a titolo di esempio, di ridurre un'immagine del 10%; creazione di immagini speculari; creazioni di sequenze di immagini.

## Caratteristiche

Netpbm è fatto per essere gestito da una sola persona attraverso una shell, ma può esser richiamato e utilizzato da un programma. Netpbm è in grado di leggere e scrivere file di dimensioni maggiori ai 2 GB, indipendentemente dal sistema operativo (una delle caratteristiche di Netpbm è che può essere compilato e quindi funzionare su ogni sistema operativo). Ci sono casi però in cui netpbm non può gestire file di grandi dimensioni: è il caso in cui NetPBM deve appoggiarsi a librerie esterne, ad esempio nel caso in cui deve richiamare le librerie JPEG.

## La libreria Netpbm

La libreria di programmazione Netpbm, libnetpbm, rende più facile scrivere programmi che manipolano le immagini grafiche. La sua funzione principale è quella di leggere e scrivere file nei formati Netpbm, e siccome il pacchetto Netpbm contiene convertitori per tutti i più popolari formati grafici, se il programma legge e scrive i formati di Netpbm, è possibile utilizzarlo con qualsiasi altro formato.

Ma la libreria contiene anche alcune funzioni di utilità, come il disegno di caricature e la conversione RGB/YCbCr.

## Formati file e programmi

Netpbm definisce un set di formati grafici definiti netpbm formats:

* I pixmap/greymap/bitmap PPM, PGM, PBM. Si possono trovare riferimenti ad essi come PNM.
* Il più sofisticato è il formato PAM.

Netpbm contiene oltre 220 programmi nel pacchetto, molti dei quali contengono nel nome parole chiave come "pbm", "pgm", "ppm", "pam", o "pnm". Ad esempio se desiderate ridurre un'immagine del 10% potete usare pamscale, oppure pamcomp per sovrapporre due immagini, ancora con la funzione pbmtext potete creare un'immagine con del testo ed ancora si ha la possibilità di ridurre il numero di colori presenti nell'immagine con pnmquant.

Il pacchetto Netpbm può essere usato per conversioni successive al fine di trasformare un'immagine nel formato PBM in un file .bmp:

Comunemente questa operazione è fatta per mezzo della pipeline comunemente usata nei sistemi UNIX, la quale permette sia di salvare tempo di esecuzione che evitare di lasciare file temporanei del genere somepic.ppm nel sistema:

