Изображение автоматически поворачивается при загрузке

Я пытаюсь загрузить изображение в кодировке 9X_phtml base64 и сохранить его после декодирования. Изображение 9X_php-fpm загружается и сохраняется, и я могу получить 9X_php-cli к нему доступ, используя URL-адрес и все 9X_php-namespaces такое ... но изображение поворачивается 9X_rotation на 90 градусов против часовой стрелки, и 9X_php-oop я понятия не имею, ПОЧЕМУ !!

Место, где я 9X_php.ini получаю закодированные данные, в порядке, так 9X_php-cgi как размещение его в отлично работает!

function saveImageData($base64Data) { $base64_decoded = base64_decode($base64Data); $im = imagecreatefromstring($base64_decoded); if ($im !== false) { $imagepath = '/public/uploads/' . time() . '.jpg'; imagejpeg($im, $imagepath); chmod($imagepath, 0755); imagedestroy($im); } else { return false; } return $imagepath; } 

Я 9X_php-oop не использую никаких функций поворота, но 9X_php-namespaces он все равно вращается. Я могу использовать 9X_rotating функцию PHP GD, например imagerotate, но 9X_php-include не хочу этого по причинам вроде черного 9X_php-frameworks фона и т. Д.

Если ты можешь помочь ... ты 9X_php-include самый классный человек !!

16
0
3
Общее количество ответов: 3

Ответ #1

Ответ на вопрос: Изображение автоматически поворачивается при загрузке

Я предполагаю, что загружаемое изображение 9X_php.ini на самом деле повернуто, но исправляется, поскольку 9X_base64 оно содержит данные поворота в своем разделе 9X_php-oop EXIF. (Например, камера может знать о портретной 9X_rotating ориентации при съемке фотографии и сохранять 9X_base64 эту информацию в данных EXIF; некоторые 9X_gd программы просмотра знают о данных поворота 9X_php.ini и будут автоматически поворачивать фотографию 9X_php-oop при ее просмотре.) В этом случае , изображение 9X_php-errors может просто отображаться для поворота, в зависимости 9X_php-frameworks от того, что вы используете для его просмотра.

Вы 9X_php просматриваете изображения «до загрузки» и 9X_php-mail «после загрузки» с помощью одного и того 9X_rotating же программного обеспечения? Что произойдет, если 9X_gd вы посмотрите на них обоих, скажем, в одном 9X_php-frameworks веб-браузере?

Что произойдет, если вы попробуете 9X_php.ini другое изображение, желательно из другого 9X_rotate источника? Есть ли у вас какое-либо программное 9X_php-include обеспечение, которое позволит вам просматривать 9X_php-namespaces данные EXIF ​​изображения? Ищите значение 9X_php-cli «Ориентация»; любое значение, кроме «1», означает, что 9X_rotate для изображения установлен поворот (см. this page для 9X_php5 достойного описания.)

Итак, вкратце, я бы 9X_php-include сказал, что базовое изображение в файле 9X_base64 JPEG имеет «неправильную» ориентацию, а 9X_php-namespaces данные EXIF ​​содержат информацию для исправления 9X_base64 этого поворота для отображения. Это очень 9X_php вероятно, если источником является, например, iPhone, который 9X_php-namespaces только что играл с моим, кажется, хранит 9X_rotation свои базовые данные изображения в альбомной 9X_rotation ориентации, но устанавливает данные EXIF, если 9X_php-fpm изображение было действительно снято (и, следовательно, должно 9X_php-fpm отображаться ) как портрет.

Лучший способ 9X_base64 исправить это - почти наверняка проверить 9X_php5 данные EXIF ​​в файле после загрузки с помощью 9X_php-cli PHP EXIF functions и повернуть изображение по мере необходимости, чтобы 9X_php исправить ориентацию перед сохранением собственной 9X_php копии.

17
1

  • @DonovanThomson Да, это обычная проблема для мобильных устройств, потому что для поворота всех данных в бо ...

Ответ #2

Ответ на вопрос: Изображение автоматически поворачивается при загрузке

";
    print_r($exif);
    echo "
"; if (!empty($exif['Orientation'])) { $imageResource = imagecreatefromjpeg($filePath); switch ($exif['Orientation']) { case 3: $image = imagerotate($imageResource, 180, 0); break; case 6: $image = imagerotate($imageResource, -90, 0); break; case 8: $image = imagerotate($imageResource, 90, 0); break; default: $image = $imageResource; } imagejpeg($image, $filename, 90); } } ?>
Choose img

9X_php-fpm
2
0

Ответ #3

Ответ на вопрос: Изображение автоматически поворачивается при загрузке

У меня возникла эта проблема при создании 9X_php мобильного гибридного приложения, которое 9X_php-include использовало Cordova для доступа к камере 9X_php.ini мобильного телефона и последующей публикации 9X_php.ini изображения на сервере. Я решил это, установив 9X_php.ini для свойства rightOrientation значение true.

navigator.camera.getPicture(onSuccess, onFail, { quality: 80, destinationType:Camera.DestinationType.DATA_URL, correctOrientation : true }); 

1
0