Comment détecter tourné l'angle de la photo, et la rotation automatique pour l'affichage d'un site web comme des applications de bureau n'sur l'affichage?
Si je prends une photo avec un appareil photo, il stocke l'orientation/l'angle de l'appareil alors quand j'ai vue l'image sur le PC avec une bonne application, il montre automatique-rotation à 0.
Mais quand je l'ai télécharger sur un site web, il montre l'angle d'origine, afin que l'image ne semble pas bon.
Comment puis-je détecter ce avec PHP et faire pivoter l'image, et clair cet angle drapeau de méta-informations.
Vous devez vous connecter pour publier un commentaire.
Pour ce faire, vous devez lire les informations EXIF de la fichier JPEG. Vous pouvez soit le faire avec
exif
extension PHP ou avecPEL
.En fait, vous devez lire le
Orientation
drapeau dans le fichier. Voici un exemple d'utilisation de laexif
extension PHP etWideImage
pour la manipulation d'images.Fatal error: Uncaught exception 'WideImage_UnknownImageOperationException' with message 'Can't load 'exifOrient' operation.'
J'ai modifié Chris exemple pour ajouter une case pour les exifs de la fonction, suppression de la mise en miroir, et aussi pour écrire le fichier sur le système de fichier en utilisant le même nom de fichier. De cette façon, vous pouvez appeler cette fonction à droite après l'appel de move_uploaded_file, comme ceci:
correctImageOrientation($destinationFilename);
est de ne pas travailler avec $destinationFilename être le chemin d'accès absolu. Une idée ?Si vous voulez juste utiliser GD et le php extension EXIF, vous pouvez utiliser ceci:
La rotation du pavillon sont stockées dans les données EXIF (voir cet article pour plus d'info).
Vous aurez besoin de lire la rotation de l'indicateur à partir des données EXIF en PHP et ensuite faire pivoter l'image à votre convenance. Il existe une variété de PHP bibliothèques EXIF, si vous avez le serveur web mis en place avec l'extension installée, vous serez en mesure d'utiliser le PHP fourni bibliothèque.
Je dirais la rotation de l'image une fois sur télécharger (par exemple à l'aide de la Bibliothèque GD - la plupart des PHP installations de ces jours semblent venir avec elle), de sorte que vous n'avez pas besoin de vous soucier de compensation de l'EXIF de rotation de données (pas sûr de savoir comment facile c'est avec PHP, je n'ai jamais essayé).