PHP-处理从iPhone拍摄的垂直图像
我已经做了一个网站,采取了一张照片,它转换成正方形,它与其他图像合并。该网站运行良好,但我有一个问题,一个大问题 从iPhone垂直拍摄的照片实际上是水平拍摄的。然后,当它转换和合并时,图像显示错误的旋转:( 例如:iPhone拍摄垂直照片: 实际上,垂直照片是: 当我从mac打开时,这些照片显示良好,但当从另一个平台(win或linux)打开时,这些照片显示为水平。为此,我认为这些图像包含识别它的任何数据 php代码如下:(我认为代码是正确的,只需要放入任何指令来识别方向)PHP-处理从iPhone拍摄的垂直图像,php,ios,iphone,image,Php,Ios,Iphone,Image,我已经做了一个网站,采取了一张照片,它转换成正方形,它与其他图像合并。该网站运行良好,但我有一个问题,一个大问题 从iPhone垂直拍摄的照片实际上是水平拍摄的。然后,当它转换和合并时,图像显示错误的旋转:( 例如:iPhone拍摄垂直照片: 实际上,垂直照片是: 当我从mac打开时,这些照片显示良好,但当从另一个平台(win或linux)打开时,这些照片显示为水平。为此,我认为这些图像包含识别它的任何数据 php代码如下:(我认为代码是正确的,只需要放入任何指令来识别方向) 方向存储在ex
方向存储在exif数据中。您应该从图像中提取该信息,并相应地旋转该图像。您可以在此处找到。
您可以在这里找到。方向存储在exif数据中。您应该从图像中提取该信息,并相应地旋转该图像。您可以在这里找到。
在这里你可以找到。非常感谢马丁杯。我会试试;)非常感谢马丁杯。我试试看;)
<?php
$file = $_FILES['image1']['name'];
list($x, $y) = getimagesize($file);
echo "MEDIDAS";
echo "<br>";
echo "x: ".$x;
echo "<br>";
echo "y: ".$y;
echo "<br>";
// horizontal rectangle
if ($x > $y) {
$square = $y; // $square: square side length
$offsetX = ($x - $y) / 2; // x offset based on the rectangle
$offsetY = 0; // y offset based on the rectangle
$grados = 270;
echo "Horizontal rectangle";
}
// vertical rectangle
elseif ($y > $x) {
$square = $x;
$offsetX = 0;
$offsetY = ($y - $x) / 2;
$grados = 270;
echo "Vertical rectangle";
}
// it's already a square
else {
$square = $x;
$offsetX = $offsetY = 0;
$grados = 0;
echo "Cuadrat";
}
?>