이미지 처리 및 GD imagecolorclosestalpha

(PHP 4 >= 4.0.6, PHP 5, PHP 7, PHP 8)

imagecolorclosestalpha — 지정된 색상 + 알파에 가장 가까운 색상의 인덱스를 가져옵니다.


설명

imagecolorclosestalpha(
    GdImage $image,
    int $red,
    int $green,
    int $blue,
    int $alpha
): int
                

지정된 RGB 값 및 alpha 레벨에 "closest" 이미지 팔레트의 색상 인덱스를 반환합니다.


매개변수

image
imagecreatetruecolor()와 같은 이미지 생성 함수 중 하나에서 반환되는 GdImage 객체.
red
빨간색 구성 요소의 값입니다.
green
녹색 구성 요소의 가치.
blue
파란색 구성 요소의 값입니다.
alpha
0에서 127 사이의 값입니다. 0은 완전히 불투명함을 나타내고 127은 완전히 투명함을 나타냅니다.

색상 매개변수는 0에서 255 사이의 정수 또는 0x00에서 0xFF 사이의 16진수입니다.


반환 값

팔레트에서 가장 가까운 색상의 인덱스를 반환합니다.


Examples

예제 #1 이미지에서 색상 세트 검색

                  
<?php
// Start with an image and convert it to a palette-based image
$im = imagecreatefrompng('figures/imagecolorclosest.png');
imagetruecolortopalette($im, false, 255);

// Search colors (RGB)
$colors = array(
    array(254, 145, 154, 50),
    array(153, 145, 188, 127),
    array(153, 90, 145, 0),
    array(255, 137, 92, 84)
);

// Loop through each search and find the closest color in the palette.
// Return the search number, the search RGB and the converted RGB match
foreach($colors as $id => $rgb)
{
    $result = imagecolorclosestalpha($im, $rgb[0], $rgb[1], $rgb[2], $rgb[3]);
    $result = imagecolorsforindex($im, $result);
    $result = "({$result['red']}, {$result['green']}, {$result['blue']}, {$result['alpha']})";

    echo "#$id: Search ($rgb[0], $rgb[1], $rgb[2], $rgb[3]); Closest match: $result.\n";
}

imagedestroy($im);
?>
                  
                

위의 예는 다음과 유사한 결과를 출력합니다.

#0: Search (254, 145, 154, 50); Closest match: (252, 150, 148, 0).
#1: Search (153, 145, 188, 127); Closest match: (148, 150, 196, 0).
#2: Search (153, 90, 145, 0); Closest match: (148, 90, 156, 0).
#3: Search (255, 137, 92, 84); Closest match: (252, 150, 92, 0).
                

기타