Dlaczego zdjęcie po przesłaniu leży na boku
Zdjęcie pionowe w telefonie, poziome w formularzu? Co robi flaga orientacji Exif, jak odróżnić obrócone piksele od etykiety i jak to rozstrzygnąć.
- exif orientation
- photo rotation
- product photography
- image upload
- jpeg
- webp
- marketplace listings
- file metadata

Fotografujesz produkt telefonem, obracasz go w dłoni, naciskasz spust migawki. Na ekranie zdjęcie stoi pionowo. W formularzu przesyłania pliku na marketplace ląduje położone na boku — ten sam plik, obrócony o ćwierć obrotu.
To nie awaria telefonu. Obraz najprawdopodobniej naprawdę leży na boku wewnątrz pliku — i leży tak od chwili wykonania zdjęcia. Telefon mimo to pokazuje Ci go właściwą stroną do góry. Formularz przesyłania tego nie zrobił.
Twój plik jest w jednym z dwóch stanów, a do ich rozróżnienia wystarczy jedno sprawdzenie.
Aparat zapisuje obraz tak, jak zobaczyła go matryca
Matryca to nieruchomy prostokąt przykręcony do telefonu; nie obraca się razem z Tobą. Robisz zdjęcie w pionie, a ona i tak rejestruje kadr poziomy, z obiektem leżącym w nim na boku.

Wiele aparatów woli nie przepisywać milionów pikseli i zamiast tego zapisuje w metadanych małą liczbę o znaczeniu „obróć to o ćwierć obrotu, zanim pokażesz”. Inne obracają piksele przy zapisie i oznaczają plik jako już ustawiony pionowo — dlatego dwa telefony potrafią zachować się inaczej przy tym samym ujęciu. W pliku JPEG tą liczbą jest etykieta Exif 274, Orientation, która potrafi opisać nie tylko obroty, ale i kadry odbite lustrzanie.
Jedne programy respektują flagę, inne ją ignorują
Nowoczesne przeglądarki ją odczytują. Właściwość CSS image-orientation ma wartość początkową from-image; MDN ujmuje to wprost: „Informacje EXIF zawarte w obrazie służą do odpowiedniego obrócenia obrazu”. Działa to we wszystkich przeglądarkach od kwietnia 2020 roku.
Wszystko, co nie jest przeglądarką, wciąż może tę etykietę zignorować. Standardy internetowe zbiegły się przy jej respektowaniu, ale mnóstwo dekoderów po stronie serwera, generatorów miniatur i bibliotek graficznych powstało przed tym zbliżeniem i w ogóle do tej etykiety nie zagląda — a nic ich do tego nie zobowiązuje.
Pytanie nigdy nie brzmi więc „czy moje zdjęcie leży na boku”, tylko „czy program, który je wyświetla, odczytał flagę”. Twoja galeria odczytuje. Generator miniatur na marketplace — niekoniecznie.
Obrót w galerii bywa tylko nadpisaniem flagi
Stukasz przycisk obrotu, a wynik zależy od aplikacji. Zdarzyć się mogą dwie zupełnie różne rzeczy.

- Aplikacja zmienia wartość orientacji i zostawia dane pikseli nietknięte. Natychmiastowo, bezstratnie i niewidocznie dla wszystkiego, co flagę ignoruje: Twoje zdjęcie nadal leży w pliku na boku.
- Aplikacja przekodowuje plik: dekoduje piksele, obraca je i zapisuje nowy plik z wyzerowaną flagą. Obrót jest wtopiony na stałe i przetrwa wszędzie. Przy PNG albo bezstratnym WebP nic to nie kosztuje; przy JPEG kosztuje zwykle jedno pokolenie przekodowania — warto je zapłacić raz i nie warto powtarzać.
Której drogi trzyma się dana aplikacja, nie poznasz po przycisku, a bywa, że zmieniało się to między wersjami tego samego programu. Nie zakładaj niczego; sprawdź wynik.
Gorsze jest narzędzie, które obraca piksele, ale kopiuje stare metadane bez zmian: flaga nadal mówi „obróć”, piksele już są obrócone, a programy respektujące flagę obracają zdjęcie po raz drugi.
Jak rozpoznać, w którym stanie jest Twój plik
Nie rozstrzygniesz tego, wpatrując się w zdjęcie uważniej — tylko sprawdzając coś, co nie jest podglądem.

- Porównaj kształt z liczbami. Jeśli zdjęcie, które wygląda na pionowe, jest we właściwościach pliku opisane jako szersze niż wysokie, piksele są poziome, a całą robotę wykonuje flaga. Część programów koryguje również te liczby, więc niezgodność dowodzi więcej niż zgodność.
- Odczytaj samą flagę. Przeglądarki internetowe, programy do oglądania zdjęć i miniatury w menedżerze plików niemal wszystkie już respektują tę etykietę, więc ich zgodność niczego nie dowodzi. Pracuj na kopii, nigdy na oryginale, i otwórz ją w przeglądarce Exif, żeby odczytać
Orientationbezpośrednio. Cokolwiek innego niż1, pokazywane często jako „Normal”, oznacza, że robotę wykonuje flaga, a piksele nie stoją pionowo.
Rozstrzygnij orientację, zanim plik dotknie cokolwiek innego
remover.bg przyjmuje pliki PNG, JPEG i WebP do 25 MB i oddaje nowy plik z usuniętym tłem. To narzędzie do usuwania tła, a nie edytor zdjęć: obracanie należy do edytora zdjęć w Twoim telefonie albo do programu graficznego — zanim prześlesz plik.
Ta kolejność ma znaczenie, bo tworzysz nowy plik. Zarówno PNG, jak i kontener WebP mają gdzie umieścić dane Exif — specyfikacja WebP od Google dopuszcza metadane „in 'EXIF' or 'XMP ' Chunks” — ale to, czy edytor użyty do obrotu w ogóle zapisze je przy eksporcie, jest decyzją tego edytora, a nie Twoją. Wtop obrót w piksele, a nie zostanie żadna flaga, którą można by zgubić. Ten format omawiają nasze uwagi o tym, jak eksportować WebP bez konwersji.
Kolejność, która działa:
- Obróć zdjęcie w edytorze i wyeksportuj kopię, zamiast stukać przycisk obrotu w galerii.
- Sprawdź wartość
Orientationw tej wyeksportowanej kopii. - Prześlij ją do usunięcia tła.
- Umieść wycinek na jednolitym kolorze albo na własnym zdjęciu, dodając cień, jeśli ma leżeć na powierzchni.
Zespoły przepuszczające duże ilości plików przez HTTP API do wsadowego usuwania tła powinny najpierw ujednolicić orientację w swoim procesie: jedno źródło leżące na boku daje jeden wycinek leżący na boku — i tak tysiąc razy. Orientacja leży poza zasadami dotyczącymi tła w naszym poradniku o zdjęciach na Amazonie, ale oferta z leżącym zdjęciem wygląda niechlujnie niezależnie od tego, co poza tym udało się zrobić dobrze.
Nawyk, który warto wyrobić
Ufaj plikowi, nie podglądowi. Obracaj przez eksport i odczytaj Orientation raz na kopii; wtedy zdjęcie stoi pionowo tak samo w przeglądarce, w generatorze miniatur i w kolejce do drukarni.


