이미지 처리에 PHP를 사용하는 경우 ImageGetClip 은 일반적으로 사용되는 기능으로 이미지를 자르는 데 도움이됩니다. 그러나 많은 개발자들이 실제 작업에서 이미지 품질의 저하 문제를 겪을 수 있습니다. 이 기사는 ImageGetClip을 사용하여 이미지를 자르면 이미지의 품질을 최대화하는 방법을 설명합니다.
ImageGetClip 은 PHP의 함수로 이미지에서 지정된 영역의 자른 이미지를 얻습니다. 기본 구문은 다음과 같습니다.
imagegetclip(resource $image, int $x, int $y, int $width, int $height)
매개 변수 설명 :
$ 이미지 : 작동 할 이미지 리소스.
$ x 및 $ y : 클리핑 영역의 시작 좌표.
너비 와 $ 높이 : 농작물 영역의 너비와 높이.
ImageGetClip이 편리하지만 기본적으로 이미지에서 약간의 압축 및 서식을 수행하므로 자른 이미지에서 품질 손실이 발생할 수 있습니다. 이 문제를 피하기 위해 몇 가지 팁을받을 수 있습니다.
그림을 자르면 무손실 형식으로 저장하는 것이 품질 손실을 줄이는 효과적인 방법입니다. 일반적인 무손실 이미지 형식에는 PNG 및 TIFF가 포함됩니다. JPEG 형식과 비교하여 PNG 형식은 압축으로 인해 이미지 세부 사항을 잃지 않습니다.
자른 이미지를 저장할 때 무손실 형식을 사용하십시오.
// 새로운 이미지 리소스를 만듭니다
$source_image = imagecreatefromjpeg("source.jpg");
// 자르기 작업을 수행하십시오
$cropped_image = imagegetclip($source_image, 50, 50, 200, 200);
// AS를 저장하십시오 PNG 체재,품질 손실을 피하십시오
imagepng($cropped_image, 'cropped_image.png');
JPEG 형식으로 저장 해야하는 경우 저장 품질을 조정하여 이미지 품질의 저하를 줄일 수 있습니다. ImageJPEG 함수를 사용하면 기본값이 75 (0과 100 사이)로 출력 이미지의 품질을 설정할 수 있습니다. 이 값을 높이면 이미지 품질이 높아지고 압축을 줄이며 파일 크기도 증가합니다.
// 품질을 설정하십시오 90,더 높은 품질은 더 자세한 정보를 유지합니다
imagejpeg($cropped_image, 'cropped_image.jpg', 90);
자르기 작업으로 인해 이미지 해상도가 변경되어 이미지 품질에 영향을 미칩니다. 자른 그림이 고해상도를 유지하면 품질 손실을 효과적으로 줄일 수 있습니다. 자르면 이미지를 과도하지 말고 원본 이미지의 해상도를 유지하려고 노력하십시오.
기본 자르기 작업 외에도 PHP의 이미지 처리 라이브러리 (예 : GD 및 Imagemagick)는 더 많은 최적화 옵션을 제공합니다. Imagemagick은 이미지를 처리 할 때 고품질 자르기를 지원하고 더 미세한 컨트롤을 제공합니다. Imagemagick 라이브러리를 설치하고 사용하면 자른 이미지의 품질을 더욱 향상시킬 수 있습니다.
// 사용 ImageMagick 작물 수술을 수행하십시오
$imagick = new \Imagick('source.jpg');
$imagick->cropImage(200, 200, 50, 50);
$imagick->writeImage('cropped_image.jpg');
ImageGetClip을 사용하여 이미지를 자르면 이미지 품질의 저하가 일반적인 문제이지만 다음과 같이 최적화 할 수 있습니다.
PNG와 같은 무손실 형식을 사용하여 자른 이미지를 저장하십시오.
JPEG로 저장할 때는 고품질 설정을 사용하여 이미지 압축을 줄입니다.
이미지의 해상도를 유지하고 과밀을 피하십시오.
Imagemagick과 같은보다 강력한 이미지 처리 라이브러리로 최적화하십시오.
이 방법을 사용하면 PHP에서 이미지를 자르면 이미지 품질을 최대화하고 불필요한 세부 사항 손실을 피할 수 있습니다.