部分手機拍照後上傳圖片,使用gd庫處理圖片默認發生旋轉。

  • 2019 年 12 月 18 日
  • 筆記

部分手機拍照圖片exif頭資訊中設置了Orientation,該參數影響圖片的旋轉方式,導致生成縮列圖時會發生旋轉。

需要使用內置函數exif_read_data獲取圖片exif頭資訊,該函數依賴擴展exif,大多數環境默認未開啟或未載入該擴展,需要先添加該擴展。

     $exif = exif_read_data($image);       if (!empty($exif['Orientation'])) {            switch ($exif['Orientation']) {                case 8:                   $im = imagerotate($im, 90, 0);                   break;               case 3:                   $im = imagerotate($im, 180, 0);                   break;               case 6:                   $im = imagerotate($im, -90, 0);               break;           }       }