PHP Çalışma dışarı renk doygunluğu

3 Cevap php

i şu RGB değerlerini düşünelim:

R:129 G:98 B:87

Photoshop o rengin doygunluğu% 33 olduğunu söylüyor

Nasıl PHP ve RGB değerlerini kullanarak o yüzdesini çalışmak istiyorsunuz?

3 Cevap

Bkz http://stackoverflow.com/questions/1773698/rgb-to-hsv-in-php

Bu kodu yalnızca doygunluğu bit alarak, ve bir yüzdesi haline dönüştürme:

function saturation($R, $G, $B) {  // 0-255
     $Min = min($R, $G, $B);
     $Max = max($R, $G, $B);
     return (($Max - $Min) / $Max) * 100;
}

Alternatif olarak yukarıdaki linkte orijinal kodu kullanabilirsiniz - HSV döner, 0.0 ve 1.0 arasında olan bu değerleri, sadece yüzdesini almak için 100 ile doygunluk değerini çarpmak gerekir bu yüzden.

PEAR (PHP Extensions And Application Repository) Farklı renk modelleri arasında hızlı bir dönüşüm yapmak Image_Color2 hangi olanak adında güzel bir paketi var:

include "Image/Color2.php";

$color = new Image_Color2(array(129,98,87));
$hsv = $color->convertTo('hsv');
$hsvArray = $hsv->getArray();

echo "Hue is " . $hsvArray[0] . "\n";
echo "Saturation is: " . $hsvArray[1] . "\n";
echo "Brightness is: " . $hsvArray[2];    

ne http://php.net/manual/de/function.hexdec.php? Bir başlangıç ​​olarak?