>백엔드 개발 >PHP 문제 >PHP에서 이미지 픽셀 크기를 수정하는 방법

PHP에서 이미지 픽셀 크기를 수정하는 방법

藏色散人
藏色散人원래의
2020-11-04 09:11:233314검색

PHP에서 이미지의 픽셀 크기를 수정하는 방법: 먼저 PHP 샘플 파일을 만든 다음 접미사에 따라 파일이나 URL에서 새 이미지를 만든 다음 최종적으로 수정할 이미지의 픽셀을 얻습니다. 이미지의 일부를 복사하여 크기를 조정할 수 있습니다.

PHP에서 이미지 픽셀 크기를 수정하는 방법

권장: "PHP 비디오 튜토리얼"

PHP로 사진의 픽셀 크기 수정

다음은 사진을 지정된 픽셀로 수정하는 방법 및 사용 예입니다.

/**
 * @Desc:
 * @DateTime: xxx
 * @param $filename 文件名(所在路径)
 * @param $xmax 修改后最大宽度
 * @param $ymax 修改后最大高度
 * @param $ext 文件后缀
 * @return resource
 */
function resize_image($filename, $newx, $newy, $ext)
{
    //根据后缀,由文件或 URL 创建一个新图象(内置函数)
    if($ext == "jpg" || $ext == "jpeg")
        $im = imagecreatefromjpeg($filename);
    elseif($ext == "png")
        $im = imagecreatefrompng($filename);
    elseif($ext == "gif")
        $im = imagecreatefromgif($filename);
    //获取当前待修改图片像素(内置函数)
    $x = imagesx($im);
    $y = imagesy($im);
    //新建一个真彩色图像(内置函数)
    $im2 = imagecreatetruecolor($newx, $newy);
    
    //重采样拷贝部分图像并调整大小(内置函数)
    imagecopyresampled($im2, $im, 0, 0, 0, 0, floor($newx), floor($newy), $x, $y);
    return $im2;
}
//使用示例:
$tmp = './img/test.jpg';//图片文件所在路径,相对路径和绝对路径都行
$fileinfo = pathinfo($tmp);
$ext = $fileinfo['extension'];
$image = resize_image($tmp, 1242, 2208, $ext);
if($ext == "jpg" || $ext == "jpeg")
    imagejpeg($image, $tmp);
elseif($ext == "png")
    imagepng($image, $tmp);
elseif($ext == "gif")
    imagegif($image, $tmp);

스크립트가 실행된 후, 수정된 사진은 원본으로 교체됩니다. 사진이 있으며 구현 로직은 비즈니스에 따라 합리적으로 수정할 수 있습니다.

위 내용은 PHP에서 이미지 픽셀 크기를 수정하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.