이미지 처리에 PHP를 사용할 때 imageCreate () 및 imageColorResolve ()는 매우 기본적이고 중요한 기능입니다. 그들의 목적을 이해하면 개발자가 이미지를보다 효율적으로 만들고 조작하는 데 도움이 될 수 있습니다.
imageCreate ()는 빈 이미지 캔버스를 만드는 데 사용되며 일반적으로 후속 드로잉 작업과 함께 사용됩니다. 기본 구문은 다음과 같습니다.
$image = imagecreate(int $width, int $height);
매개 변수 설명 :
$ 너비 : 이미지의 너비 (픽셀 단위).
$ 높이 : 이미지의 높이 (픽셀 단위).
반품 값 :
성공하면 이미지 리소스 (리소스 유형)가 반환됩니다.
실패하면 거짓을 반환합니다.
예 :
<?php
// 넓은 것을 만듭니다 200 픽셀、높은 100 픽셀이미지
$image = imagecreate(200, 100);
// 배경색을 흰색으로 설정합니다
$white = imagecolorallocate($image, 255, 255, 255);
// 브라우저에 사진을 출력합니다
header('Content-Type: image/png');
imagepng($image);
// 자원을 자유롭게합니다
imagedestroy($image);
?>
위의 예에서 먼저 캔버스를 생성하고 imageColorAllocate () 로 배경색을 설정합니다. 그런 다음 ImagePng ()를 사용하여 이미지를 출력하십시오.
참고 : imageCreate ()는 팔레트 기반 이미지를 만듭니다. 더 높은 품질 (예 : 투명성 처리)이 필요한 경우 imageCreatetRueColor ()를 사용할 수 있습니다.
imageColorResolve ()는 기존 이미지 팔레트에서 지정된 RGB 값에 가장 가까운 색상을 찾는 데 사용됩니다. 정확히 일치하는 색상이없고 이미지 팔레트에 남은 공간이 있으면 새로운 색상이 추가됩니다.
문법 :
$color = imagecolorresolve(resource $image, int $red, int $green, int $blue);
매개 변수 설명 :
$ 이미지 : imageCreate () 또는 기타 이미지 생성 기능에 의해 생성 된 이미지 리소스.
$ RED , $ GREEN , $ BLUE : RGB 값의 색상 (0-255).
반품 값 :
컬러 인덱스 (정수 유형)를 반환합니다.
예 :
<?php
// a 100x100 이미지
$image = imagecreate(100, 100);
// 이미지에 배경색을 할당합니다
$bg = imagecolorallocate($image, 0, 0, 0);
// 지정된 면밀한 구문 분석을 시도하십시오 RGB 값의 색상
$resolvedColor = imagecolorresolve($image, 100, 150, 200);
// 구문 분석 된 색상을 사용하여 선을 그립니다
imageline($image, 0, 0, 100, 100, $resolvedColor);
// 출력 사진
header('Content-Type: image/png');
imagepng($image);
// 이미지 자원을 파괴하십시오
imagedestroy($image);
?>
실제 개발에서 imageColorResolve ()는 제한된 색상 (예 : GIF 형식)을 가진 이미지에서 작업하는 경우 특히 유용합니다. 과도한 색상으로 인한 이상을 피할 수 있습니다.
imageCreate ()는 이미지 리소스를 만드는 시작점입니다.
imageColorResolve ()는 주어진 색상에 가까운 팔레트 색인을 찾거나 생성하는 데 사용됩니다.
이 둘은 일반적으로 간단한 이미지 생성 및 편집 작업을 효율적으로 처리하기 위해 서로 함께 사용됩니다.