Я сделал приложение, которое позволяет пользователю делать снимок, который затем будет храниться на онлайн-сервере. Моя проблема заключается в том, что в зависимости от телефона некоторые из изображений принимаются во вращение.Повернуть изображение в PHP
Это мой файл PHP (я получаю изображение закодированное в base64)
<?php
$file_path = "photos/";
$image = $_REQUEST['base64'];
$name=$_REQUEST['ImageName'];
// Decode Image
$binary=base64_decode($image);
$success = file_put_contents($file_path.$name, $binary);
if($success === false) {
echo "Couldn't write file";
} else {
echo "Wrote $success bytes";
}
echo $name;
?>
Я попытался с помощью этого кода, но это не меняет свою ориентацию изображения (возможно, потому, что я посылаю это неправильно paramators?)
$exif = exif_read_data($binary);
$ort = $exif['IFD0']['Orientation'];
switch($ort)
{
case 1: // nothing
break;
case 2: // horizontal flip
$binary->flipImage($public,1);
break;
case 3: // 180 rotate left
$binary->rotateImage($public,180);
break;
case 4: // vertical flip
$binary->flipImage($public,2);
break;
case 5:// vertical flip + 90 rotate right
$binary->flipImage($public, 2);
$binary->rotateImage($public, -90);
break;
case 6: // 90 rotate right
$binary->rotateImage($public, -90);
break;
case 7: // horizontal flip + 90 rotate right
$binary->flipImage($public,1);
$binary->rotateImage($public, -90);
break;
case 8: // 90 rotate left
$binary->rotateImage($public, 90);
break;
}
Любые идеи, что я должен изменить? Прошу прощения, если это может показаться глупым вопросом, но я новичок в php.