← Blog
5 min de citire

De ce poza ta iese culcată pe o parte după încărcare

Poza e dreaptă pe telefon, dar culcată în formularul de încărcare? Ce face marcajul Exif de orientare și cum deosebești pixelii rotiți de o etichetă.

  • exif orientation
  • photo rotation
  • product photography
  • image upload
  • jpeg
  • webp
  • marketplace listings
  • file metadata
De ce poza ta iese culcată pe o parte după încărcare

Fotografiezi un produs cu telefonul, întorci aparatul, apeși pe declanșator. Pe ecran arată drept. În formularul de încărcare al marketplace-ului ajunge culcată pe o parte — același fișier, rotit cu un sfert de tură.

Nu e telefonul tău defect. Se prea poate ca imaginea să fie culcată pe o parte chiar în interiorul fișierului, și să fie așa din clipa în care ai făcut-o. Telefonul ți-o arată drept, indiferent de asta. Formularul de încărcare, nu.

Fișierul tău e într-una din două stări, iar ca să le deosebești e nevoie de o singură verificare.

Aparatul salvează imaginea așa cum a văzut-o senzorul

Un senzor de imagine e un dreptunghi fix, prins de telefon; el nu se rotește când te rotești tu. Fotografiezi pe verticală, iar el tot un cadru orizontal înregistrează, cu subiectul tău culcat pe o parte în interiorul lui.

Prim-plan cu corpul unui aparat foto fără obiectiv, arătând montura metalică deschisă, mai lată decât înaltă

Multe aparate evită să rescrie milioane de pixeli și scriu în schimb un număr mic în metadate, cu sensul „rotește asta cu un sfert de tură înainte să o afișezi”. Altele rotesc pixelii la salvare și marchează fișierul drept deja drept — de asta două telefoane se comportă diferit cu același cadru. Într-un JPEG, numărul acela e eticheta Exif 274, Orientation, și poate descrie și cadre oglindite, nu doar rotiri.

Unele programe respectă marcajul, altele îl ignoră

Browserele moderne chiar îl citesc. Proprietatea CSS image-orientation are valoarea inițială from-image; MDN o spune pe șleau: „Informațiile EXIF conținute în imagine sunt folosite pentru a roti imaginea în mod corespunzător.” Asta funcționează în toate browserele din aprilie 2020.

Orice nu e browser poate în continuare să ignore eticheta. Standardele web s-au aliniat pe respectarea ei, dar o grămadă de decodoare de pe server, generatoare de miniaturi și biblioteci de imagini au fost scrise înainte de alinierea asta și nu se uită deloc la etichetă — și nimic nu le obligă să o facă.

Așa că întrebarea nu e niciodată „e poza mea culcată pe o parte”, ci „a citit marcajul programul care o afișează”. Galeria ta îl citește. Generatorul de miniaturi al unui marketplace s-ar putea să nu.

Rotirea din galerie s-ar putea să rescrie doar marcajul

Apeși butonul de rotire, iar rezultatul depinde de aplicație. Se pot întâmpla două lucruri foarte diferite.

O mână ținând un smartphone afară, cu ecranul pe o aplicație de galerie foto plină de poze

  • Aplicația schimbă valoarea de orientare și lasă datele de pixeli neatinse. Instantaneu, fără pierderi, invizibil pentru orice ignoră marcajul: poza ta e în continuare culcată pe o parte în fișier.
  • Aplicația recodifică: decodează pixelii, îi rotește, scrie un fișier nou cu marcajul resetat. Rotirea e imprimată în pixeli și supraviețuiește oriunde. Pentru un PNG sau un WebP fără pierderi asta nu costă nimic; pentru un JPEG costă de obicei o generație de recodificare — merită plătită o dată și nu merită repetată.

Ce cale alege o aplicație nu se vede din buton, iar lucrul ăsta s-a schimbat de la o versiune la alta a aceleiași aplicații. Nu presupune nimic; verifică rezultatul.

Și mai rău e un instrument care rotește pixelii, dar copiază metadatele vechi nemodificate: marcajul spune în continuare „rotește”, pixelii deja sunt rotiți, iar programele care îl respectă rotesc poza de două ori.

Cum îți dai seama în ce stare e fișierul tău

Nu lămurești asta uitându-te mai atent, ci doar verificând ceva care nu e o previzualizare.

Mâini ținând un smartphone cu fotografii pe ecran, ridicat în fața unui laptop deschis, pe al cărui ecran se vede același gen de galerie foto într-un browser

  • Compară forma cu cifrele. Dacă o poză care arată pe verticală apare în proprietățile fișierului ca fiind mai lată decât înaltă, pixelii sunt orizontali și treaba o face un marcaj. Unele vizualizatoare corectează și cifrele acelea, așa că o nepotrivire dovedește mai mult decât o potrivire.
  • Citește chiar marcajul. Browserele, vizualizatoarele de pe desktop și miniaturile din exploratorul de fișiere respectă acum aproape toate eticheta, așa că acordul dintre ele nu dovedește nimic. Lucrează pe o copie, niciodată pe original, și deschide-o într-un vizualizator Exif ca să citești direct Orientation. Orice altceva decât 1, afișat adesea ca „Normal”, înseamnă că treaba o face un marcaj și că pixelii nu sunt drepți.

Lămurește orientarea înainte să atingă altceva fișierul

remover.bg acceptă PNG, JPEG și WebP de până la 25 MB și îți dă înapoi un fișier nou, fără fundal. E un instrument de eliminare a fundalului, nu un editor foto: rotirea își are locul în editorul foto al telefonului sau în aplicația ta de design, înainte să încarci.

Ordinea asta contează pentru că tu creezi un fișier nou. Și PNG, și containerul WebP au unde să pună Exif — specificația WebP de la Google permite metadate „în chunk-uri «EXIF» sau «XMP »” — dar dacă editorul în care ai rotit scrie sau nu așa ceva în exportul lui e decizia acelui editor, nu a ta. Imprimă rotirea în pixeli și nu mai rămâne niciun marcaj de pierdut. Notele noastre despre cum încarci și exporți WebP fără conversie acoperă formatul acela.

O ordine care funcționează:

  1. Rotește într-un editor și exportă o copie, în loc să apeși rotirea din galerie.
  2. Verifică valoarea Orientation pe copia exportată.
  3. Încarc-o pentru eliminarea fundalului.
  4. Așază decupajul pe o culoare uniformă sau pe propria ta fotografie, cu o umbră dacă trebuie să stea pe o suprafață.

Echipele care trimit volume mari prin API-ul HTTP pentru eliminarea fundalului pe loturi ar trebui să normalizeze mai întâi orientarea în flux: o sursă culcată pe o parte devine un decupaj culcat pe o parte, de o mie de ori la rând. Orientarea rămâne în afara regulilor de fundal din ghidul nostru pentru imaginile Amazon, dar un anunț cu poza culcată pe o parte arată neglijent, oricât de bine ai fi făcut restul.

Obiceiul care merită format

Ai încredere în fișier, nu în previzualizare. Rotește prin export și citește o dată Orientation pe copie; atunci poza e dreaptă și într-un browser, și într-un generator de miniaturi, și în coada de așteptare a unei tipografii.

Continuă lectura