Vai al contenuto

JFIF è un JPEG: cosa cambia l'estensione .jfif

L'estensione strana è l'unica cosa strana qui. Un file .jfif contiene un normale JPEG, e ogni programma che legge i JPEG lo legge: convertirlo in PNG non rende l'immagine più nitida, perché non è rimasto nulla da rendere più nitido.

JFIF sta per JPEG File Interchange Format, ed è una specifica dei primi anni Novanta che descrive come avvolgere un flusso di dati JPEG perché programmi diversi siano d'accordo su cosa significano i pixel. L'involucro è un piccolo blocco di marcatori — il marcatore APP0 — all'inizio del file, che registra il rapporto d'aspetto dei pixel e a volte una miniatura. Tutto ciò che segue è JPEG puro.

Da dove viene l'estensione

L'estensione .jfif è un'abitudine dell'era Windows. Alcune fotocamere, alcuni telefoni e alcuni programmi Windows salvano i JPEG con questa estensione, e alcuni di essi non mostrano la miniatura dello stesso file se lo rinomini in .jpg. I byte non cambiano; cambia solo il nome. È per questo che un browser apre benissimo un file .jfif se lo trascini in una scheda, e che i sistemi operativi che si affidano all'estensione si confondono.

Che cosa porta davvero il blocco di marcatori

MarcatoreChe cosa contiene
APP0 (JFIF)Versione, l'unità di densità (dpi o punti per cm) e il rapporto d'aspetto dei pixel.
APP0 (altro)Un blocco specifico del fornitore: alcune fotocamere scrivono qui il proprio.
APP1 (Exif)Metadati della fotocamera: esposizione, data, orientamento, a volte GPS.
Tutto ciò che segueIl flusso di dati JPEG: tabelle di quantizzazione, tabelle di Huffman e l'immagine compressa.

Questo strumento non ha bisogno di leggere quel blocco per convertire il file. .jfif sta nella stessa lista di accettazione di .jpg e .jpeg, quindi il convertitore tratta tutte e quattro le estensioni come un unico formato. L'unico punto in cui il marcatore viene esaminato è il visualizzatore di metadati, che lo legge e riporta qualcosa come JFIF 1.02, 72 dpi — e che conserva il marcatore quando rimuove altri metadati, perché il blocco JFIF descrive come interpretare i pixel.

Cosa può e non può fare la conversione in PNG

Un JPEG è con perdita: un po' di dettaglio è stato buttato via quando è stato salvato, e non è conservato da nessun'altra parte. Decodificare il file restituisce esattamente i pixel sopravvissuti. Scrivere quei pixel in un PNG li conserva senza ulteriore perdita: quindi il PNG appare uguale al JPEG, e spesso diverse volte più grande perché il PNG si rifiuta di smussare qualsiasi cosa per ragioni di dimensione.

Quest'ultimo punto è il vero motivo per convertire. Se stai per modificare un JPEG, lavora su un PNG; se ti serve solo conservarlo, il JPEG è già più piccolo.

I limiti

In breve

Domande

Convertire un JFIF in PNG renderà l'immagine più nitida?

No. La nitidezza è stata decisa quando il JPEG è stato scritto, e la decodifica non può inventare dettaglio che è stato buttato via. Il PNG conserva fedelmente il risultato decodificato: non annulla la prima compressione.

Un file .jfif è solo un .jpg rinominato?

In pratica sì. È un flusso di dati JPEG con davanti un blocco di intestazione JFIF e un'estensione che alcuni software preferiscono. Browser ed editor lo leggono come JPEG; solo l'estensione è insolita.

Perché il PNG è molto più grande del JFIF?

Perché il JPEG comprime con perdita e il PNG no. Il PNG contiene gli stessi pixel senza ulteriore compressione, quindi una fotografia salvata come PNG è spesso diverse volte più grande.

Strumenti in questo articolo

Tutti gli articoli