2012-05-09 2 views
5

Sembra che abbiamo un problema sul fatto che le immagini sui desktop siano visualizzate correttamente in posizione verticale, ma su un iPad vengono ruotate in orizzontale. A seguito di ulteriori indagini sembra che l'iPad guardi le informazioni di rotazione dai dati EXIF ​​sull'immagine e determinando che debba essere visualizzato in orizzontale anziché in verticale (che è ciò che deve essere realmente).Come posso forzare iOS Safari a ignorare la rotazione EXIF?

C'è un modo per gestire questo senza scaricare tutte le migliaia e migliaia di immagini, rimuovere i dati EXIF ​​e ricaricarli sul nostro provider cloud?

risposta

3

Questo è estremamente strano, ma per qualche motivo - quando posizioni un'immagine assolutamente sopra un elemento video (anche un tag video vuoto) - allora un'immagine con rotazione EXIF ​​fa non ruotare!

<video></video> 
<img src="url.jpg" style="position:absolute;top:0;left:0" /> 

Testato su IOS 5.1 Iphone 4. (spero nessuno presentare questo come un bug;)).

+0

Ho trovato se l'immagine ruotata è assolutamente posizionata, riporterà 'NaturalWidth' e' NaturalHeight' ai valori ruotati, ma verrà visualizzata non ruotata. –

3

utilizzando jQuery, è alot più corto, struttura HTML:

<a href="foo" style="width:100px; height:100px;"> 
    <img src="bar" style="position:absolute; width:100px; height:100px; top:0; left:0;"> 
</a> 

Javascript:

setTimeout($.proxy(function(){ 
    this.css("position", ""); 
}, $('<video style="visibility:hidden; position:absolute; width:1px; height:1px">').before("img")), 0); 

Nota: Il timeout evita errori di visualizzazione in cui le posizioni non sono corretti volte.

funziona come un fascino su iOS 7.1, 7,0 e 6.1!

+0

Questo funziona per me, tuttavia distorce l'immagine in quanto il mio non è un quadrato perfetto come 100px per 100px. Rende la larghezza come sarebbe stata con l'immagine di lato (l'immagine è più alta della larghezza). – Tricky12

+0

L'altezza e la larghezza del tag img e un tag sono davvero solo esemplificativi ... l'esempio utilizza un img posizionato in modo assoluto che potrebbe essere ritagliato dall'ancora circostante. Dovrebbe funzionare con dimensioni diverse o addirittura con nessuno. Sembra importante che il tag video vuoto sia proprio accanto al tag img. – shoesel