Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP-处理从iPhone拍摄的垂直图像_Php_Ios_Iphone_Image - Fatal编程技术网

PHP-处理从iPhone拍摄的垂直图像

PHP-处理从iPhone拍摄的垂直图像,php,ios,iphone,image,Php,Ios,Iphone,Image,我已经做了一个网站,采取了一张照片,它转换成正方形,它与其他图像合并。该网站运行良好,但我有一个问题,一个大问题 从iPhone垂直拍摄的照片实际上是水平拍摄的。然后,当它转换和合并时,图像显示错误的旋转:( 例如:iPhone拍摄垂直照片: 实际上,垂直照片是: 当我从mac打开时,这些照片显示良好,但当从另一个平台(win或linux)打开时,这些照片显示为水平。为此,我认为这些图像包含识别它的任何数据 php代码如下:(我认为代码是正确的,只需要放入任何指令来识别方向) 方向存储在ex

我已经做了一个网站,采取了一张照片,它转换成正方形,它与其他图像合并。该网站运行良好,但我有一个问题,一个大问题

从iPhone垂直拍摄的照片实际上是水平拍摄的。然后,当它转换和合并时,图像显示错误的旋转:(

例如:iPhone拍摄垂直照片:

实际上,垂直照片是:

当我从mac打开时,这些照片显示良好,但当从另一个平台(win或linux)打开时,这些照片显示为水平。为此,我认为这些图像包含识别它的任何数据

php代码如下:(我认为代码是正确的,只需要放入任何指令来识别方向)


方向存储在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";
          }

?>