Bug #73872
Réorientation d'une image suite à la ŕeduction automatique de la taille
0%
Description
Une fiche avec un champ fichier sur lequel "Réduire automatiquement la taille des images" est coché.
Ci-dessous le fichier original et le fichier réduit, on y observe une rotation de 90 degrés.
Demandes liées
Révisions associées
Historique
Mis à jour par Frédéric Péters il y a environ un an
Les données EXIF sont bien conservées lors de la réduction de taille mais comme lors de celle-ci on part de l'affichage par le navigateur qui applique la rotation (mais tous les navigateurs font ça ?) on se trouve à l'affichage de la version réduite avec la rotation appliquée une seconde fois :/
Mis à jour par Benjamin Dauvergne il y a environ un an
Frédéric Péters a écrit :
(mais tous les navigateurs font ça ?)
Je dirai que oui : https://developer.mozilla.org/fr/docs/Web/CSS/image-orientation
On peut peut-être jouer avec cette propriété image-orientation pendant le drawImage.
Mis à jour par Frédéric Péters il y a environ un an
- Assigné à mis à Frédéric Péters
Top je n'avais pas vu l'existence de cette propriété; il y aurait donc à tester quelque chose approchant :
@@ -254,6 +254,7 @@ $.WcsFileUpload = { reader.onload = function(e) { var original_image_64 = e.target.result; var img = document.createElement("img"); + img.style.imageOrientation = "none";
(je m'assigne le ticket pour tester, si jamais ça ne marche pas je me retirerai)
Mis à jour par Benjamin Dauvergne il y a environ un an
Il faut peut-être que le DOM ait le temps de réagir au changement de style (ou alors ça n'a d'effet qu'au chargement de celle-ci et il faudrait recréer un tag img sans l'accrocher au document).
Mis à jour par Benjamin Dauvergne il y a environ un an
Sur chrome (et donc Edge aussi) et firefox l'orientation est automatiquement conservée par convas.drawImage(), drawImage ignore la CSS. Si on en croit caniuse.org on supporterait 93% des navigateurs en utilisant juste drawImage().
Dans le ticket qui introduire ExifRestorer #23152 je lis
ExifRestorer.restore_as_blob pour à la fois :
- garder les métadonnées EXIF
- améliorer la qualité de l'image tronquée (interpolation linéaire)
Je ne sais pas si ce deuxième point est vraiment important, si ça ne l'est pas alors je propose de simplement enlever ExifRestorer qui pour l'orientation se comporte mal dans quasiment 100% des cas désormais.
Mis à jour par Benjamin Dauvergne il y a environ un an
- Lié à Development #75178: Retirer l'application d'ExifRestorer lors du redimensionnement d'une image jpeg ajouté
Mis à jour par Robot Gitea il y a environ un an
- Statut changé de En cours à Solution proposée
Benjamin Dauvergne (bdauvergne) a ouvert une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/wcs/pulls/154
- Titre : Utiliser exif.js pour inverser l'orientation appliquée par canva.drawImage() (#73872)
- Modifications : https://git.entrouvert.org/entrouvert/wcs/pulls/154/files
Mis à jour par Benjamin Dauvergne il y a environ un an
J'ai testé sur la même image en y appliquant toutes les orientations1 et en comparant la sortie sur la page de validation et avec eog
, c'est tout bon.
1
bdauvergne@revestel:~$ convert-im6 ~/Téléchargements/test-image-orientation/truc.jpg -orient topright truc-2-mirror-horizontal.jpeg bdauvergne@revestel:~$ convert-im6 ~/Téléchargements/test-image-orientation/truc.jpg -orient bottomright truc-3-rotate-180.jpeg bdauvergne@revestel:~$ convert-im6 ~/Téléchargements/test-image-orientation/truc.jpg -orient bottomleft truc-4-mirror-vertical.jpeg bdauvergne@revestel:~$ convert-im6 ~/Téléchargements/test-image-orientation/truc.jpg -orient lefttop truc-5-mirror-horizontal-and-rotate-270.jpeg bdauvergne@revestel:~$ convert-im6 ~/Téléchargements/test-image-orientation/truc.jpg -orient righttop truc-6-rotate-90.jpeg bdauvergne@revestel:~$ convert-im6 ~/Téléchargements/test-image-orientation/truc.jpg -orient rightbottom truc-7-mirror-horizontal-and-rotate-90.jpeg bdauvergne@revestel:~$ convert-im6 ~/Téléchargements/test-image-orientation/truc.jpg -orient leftbottom truc-8-rotate-270.jpeg
Mis à jour par Robot Gitea il y a environ un an
- Statut changé de Solution proposée à Solution validée
Corentin Sechet (csechet) a approuvé une pull request sur Gitea concernant cette demande :
Mis à jour par Robot Gitea il y a environ un an
- Statut changé de Solution validée à Résolu (à déployer)
Benjamin Dauvergne (bdauvergne) a mergé une pull request sur Gitea concernant cette demande :
- URL : https://git.entrouvert.org/entrouvert/wcs/pulls/154
- Titre : Utiliser exif.js pour inverser l'orientation appliquée par canva.drawImage() (#73872)
- Modifications : https://git.entrouvert.org/entrouvert/wcs/pulls/154/files
Mis à jour par Transition automatique il y a environ un an
- Statut changé de Résolu (à déployer) à Solution déployée
misc: undo file orientation when resizing images (#73872)