PHP 5.4.31 Released

imagecolorclosestalpha

(PHP 4 >= 4.0.6, PHP 5)

imagecolorclosestalphaAlfası ile birlikte belirtilen rengin en yakın benzerinin renk indisini verir

Açıklama

int imagecolorclosestalpha ( resource $resim , int $kırmızı , int $yeşil , int $mavi , int $alfa )

Bu işlev, alfası ile birlikte belirtilen rengin paletli resimdeki en yakın benzerinin indisini döndürür.

Değiştirgeler

resim

imagecreatetruecolor() gibi bir resim oluşturma işlevinden dönen bir resim verisi.

kırmızı

Rengin kırmızı bileşeninin değeri.

yeşil

Rengin yeşil bileşeninin değeri.

mavi

Rengin mavi bileşeninin değeri.

alfa

0-127 arasında belirtilebilir. 0 tamamen mat, 127 ise tamamen şeffaf demektir.

Renk bileşenlerinin değerleri onluk tabanda 0-255 aralığında, onaltılık tabanda 0x00-0xFF aralığında belirtilebilir.

Dönen Değerler

Paletteki en yakın rengin indisi döner.

Örnekler

Örnek 1 - Bir resimde renk aramak

<?php
// Bir resim açıp paletli resme dönüştürelim
$im imagecreatefrompng('figures/imagecolorclosest.png');
imagetruecolortopalette($imfalse255);

// Aranacak renkler (RGB)
$colors = array(
    array(
25414515450),
    array(
153145188127),
    array(
153901450),
    array(
2551379284)
);

// Renkleri bulmak için bir döngü kuralım.
// En yakın rengin indisini alıp o indisin rengini öğrenelim
foreach($colors as $id => $rgb)
{
    
$res imagecolorclosestalpha($im$rgb[0], $rgb[1], $rgb[2], $rgb[3]);
    
$res imagecolorsforindex($im$res);
    
$res "({$res['red']}{$res['green']}{$res['blue']}{$res['alpha']})";

    echo 
"#$id: Aranan ($rgb[0]$rgb[1]$rgb[2]$rgb[3]); En yakın $res.\n";
}

imagedestroy($im);
?>

Yukarıdaki örnek şuna benzer bir çıktı üretir:

#0: Aranan (254, 145, 154, 50); En yakın (252, 150, 148, 0).
#1: Aranan (153, 145, 188, 127); En yakın (148, 150, 196, 0).
#2: Aranan (153, 90, 145, 0); En yakın (148, 90, 156, 0).
#3: Aranan (255, 137, 92, 84); En yakın (252, 150, 92, 0).

Notlar

Bilginize: Bu işlev GD'nin 2.0.1 veya sonraki sürümlerini gerektirir (2.0.28 veya sonraki sürümler önerilir).

Ayrıca Bakınız

add a note add a note

User Contributed Notes

There are no user contributed notes for this page.
To Top