Przejdź do treści

JFIF to JPEG: co zmienia rozszerzenie .jfif

Niezręczne rozszerzenie to jedyna niezręczna rzecz tutaj. Plik .jfif zawiera zwykły JPEG, a każdy program czytający JPEG go odczyta — konwersja na PNG nie wyostrzy obrazu, bo nie ma już czego wyostrzać.

JFIF to skrót od JPEG File Interchange Format — specyfikacja z początku lat 90., która opisuje, jak opakować strumień danych JPEG, żeby różne programy zgadzały się co do znaczenia pikseli. Otoczka to mały blok znacznika — znacznik APP0 — na początku pliku, zapisujący proporcje pikseli, a czasem miniaturę. Wszystko po nim to zwykły JPEG.

Skąd bierze się rozszerzenie

Rozszerzenie .jfif to nawyk z czasów Windows. Niektóre aparaty, telefony i programy Windows zapisują tak JPEG-i, a część z nich nie pokaże miniatury tego samego pliku, jeśli zmienisz jego nazwę na .jpg. Bajty się nie zmieniają; zmienia się tylko nazwa. Dlatego przeglądarka otwiera plik .jfif bez problemu, gdy przeciągniesz go do karty, i dlatego systemy operacyjne, które polegają na rozszerzeniu, się gubią.

Co faktycznie niesie blok znacznika

ZnacznikCo zawiera
APP0 (JFIF)Wersję, jednostkę gęstości (dpi lub punkty na cm) i proporcje pikseli.
APP0 (inny)Blok specyficzny dla producenta — niektóre aparaty zapisują tu własny.
APP1 (Exif)Metadane aparatu: ekspozycję, datę, orientację, czasem GPS.
Wszystko po nimStrumień danych JPEG: tabele kwantyzacji, tabele Huffmana i skompresowany obraz.

To narzędzie nie musi czytać tego bloku, żeby przekonwertować plik. .jfif znajduje się na tej samej liście akceptowanych co .jpg i .jpeg, więc konwerter traktuje wszystkie cztery rozszerzenia jako jeden format. Jedyne miejsce, w którym znacznik jest badany, to przeglądarka metadanych, która go odczytuje i podaje coś w rodzaju JFIF 1.02, 72 dpi — i która zachowuje znacznik, gdy usuwa inne metadane, bo blok JFIF opisuje, jak interpretować piksele.

Co konwersja na PNG może, a czego nie może

JPEG jest stratny: część szczegółów została wyrzucona przy zapisie i nie jest przechowywana nigdzie indziej. Dekodowanie pliku zwraca dokładnie te piksele, które przetrwały. Zapisanie ich w PNG przechowuje je bez dalszej straty — więc PNG wygląda tak samo jak JPEG, a często jest kilkukrotnie większy, bo PNG nie chce tępić niczego dla oszczędności rozmiaru.

Ten ostatni punkt to prawdziwy powód konwersji. Jeśli zamierzasz edytować JPEG, pracuj na PNG; jeśli tylko chcesz go przechować, JPEG jest już mniejszy.

Ograniczenia

W skrócie

Pytania

Czy konwersja JFIF na PNG wyostrzy obraz?

Nie. Ostrość została ustalona przy zapisie JPEG-a, a dekodowanie nie wymyśli szczegółów, które wyrzucono. PNG zapisuje zdekodowany wynik wiernie — nie odwraca pierwszej kompresji.

Czy plik .jfif to po prostu przemianowany .jpg?

Praktycznie tak. To strumień danych JPEG z blokiem nagłówka JFIF z przodu i rozszerzeniem, które preferuje część programów. Przeglądarki i edytory czytają go jako JPEG; nietypowe jest tylko rozszerzenie.

Dlaczego PNG jest znacznie większy niż JFIF?

Bo JPEG kompresuje stratnie, a PNG nie. PNG trzyma te same piksele bez dalszej kompresji, więc fotografia zapisana jako PNG jest często kilkukrotnie większa.

Narzędzia w tym artykule

Wszystkie artykuły