PHP+Imagick处理APP或WAP上传被翻转的图片

  • APP或者WAP端上传,很多图片查看原图时正常,动态处理后会有翻转的情况
  • 图片的EXIF信息中有Orientation值
  • 高级浏览器会根据Orientation值自动进行翻转,查看时不会有问题
  • Imagick编辑图片时不会自动翻转图片,编辑完会发现有的图片被翻转了
  • 所以在处理前需要需要把图片文件进行翻转+
$srcImage = '*.jpg';
$canvas = new \Imagick($srcImage);
$orientation = $canvas->getImageOrientation();
switch ($orientation) {
        case \Imagick::ORIENTATION_BOTTOMRIGHT:
            $canvas->rotateImage("#000", 180);
            break;
        case \Imagick::ORIENTATION_RIGHTTOP:
            $canvas->rotateImage("#000", 90);
            break;
        case \Imagick::ORIENTATION_LEFTBOTTOM:
            $canvas->rotateImage("#000", -90);
            break;
}
$canvas->setImageOrientation(\Imagick::ORIENTATION_TOPLEFT);
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容