首页 > 解决方案 > 调整大小功能旋转某些图像

问题描述

我编写了这个 php 函数来调整图像大小:

function resizeImage($file,$width,$height){
    $size=getimagesize($file);
    $src = imagecreatefromjpeg($file);
    $dst = imagecreatetruecolor($width,$height);
    imagecopyresampled($dst,$src,0,0,0,0,$width,$height,$size[0],$size[1]);
    return $dst;
}

不幸的是,当我使用此功能时,某些图像会旋转 180 度。我能做些什么呢?

标签: phpimageimage-resizing

解决方案


gmfm 在评论中给了我一个有用的链接。这是修正后的函数:

function resizeImage($file,$width,$height){
    $size=getimagesize($file);
    $src=imagecreatefromjpeg($file);
    $dst=imagecreatetruecolor($width,$height);
    imagecopyresampled($dst,$src,0,0,0,0,$width,$height,$size[0],$size[1]);
    $exif=exif_read_data($file,'IFD0');
    if($exif['Orientation']==3){
        $dst=imagerotate($dst,180,0);
    }
    return $dst;
}

推荐阅读