imagecolorclosest()
ฟังก์ชันที่เกี่ยวข้องกับการจัดการสีมีมากมายใน PHP programming ไม่ว่าจะการกำหนดสี หรือ อ่านข้อมูลของภาพเพื่อให้ได้สี บทความนี้จะอธิบายและยกตัวอย่าง การใช้ฟังก์ชั่น imagecolorclosest () ซึ่งเป็นหนึ่งในฟังก์ชันเกี่ยวกับสี
ฟังก์ชั่น imagecolorclosest () เป็นฟังก์ชั่นใช้ในการรับ index สีที่ใกล้เคียงที่สุดในภาพที่กำหนด ฟังก์ชั่นนี้จะส่งคืน index ของสีในจานสีของภาพซึ่งใกล้เคียงกับค่า RGB ที่ระบุไว้
รูปแบบ syntex
imagecolorclosest ( resource $image , int $red , int $green , int $blue ) : int
พารามิเตอร์:
- $ image : จะเป็นค่าที่ถูกส่งคืนโดยหนึ่งในฟังก์ชั่นการสร้างภาพเช่น imagecreatetruecolor() , imagecreate() ซึ่งจะใช้เพื่อสร้างภาพ
- $ red: เพื่อตั้งค่าองค์ประกอบสีแดง
- $ green: เพื่อตั้งค่าองค์ประกอบสีเขียว
- $ blue: เพื่อตั้งค่าองค์ประกอบสีฟ้า
พารามิเตอร์สีเป็นจำนวนเต็มระหว่าง 0 ถึง 255 หรือเลขฐานสิบหกระหว่าง 0x00 ถึง 0xFF
Return Value: ฟังก์ชั่นนี้จะคืนค่าดัชนีของสีที่ใกล้เคียงที่สุดในจานสีของภาพ
ตัวอย่างโค้ด
<?php
// Start with an image and convert it to a palette-based image
$image = imagecreatefrompng(
'https://www.mindphp.com/images/content/2017-02/Python.png');
imagetruecolortopalette($image, false, 255);
// Search closest color
$result = imagecolorclosest($image, 7, 150, 10);
$result = imagecolorsforindex($image, $result);
$result = "({$result['red']}, {$result['green']}, {$result['blue']})";
echo "Closest color: " . $result;
imagedestroy($image);
?>
เราใช้รูปภาพจากลิ้งค์นี้ https://www.mindphp.com/images/content/2017-02/Python.png ผลลัพธ์ที่ได้ คือ index ของสี ดังนี้
Closest color: (93, 93, 93)
จากผลลัพธ์ทำให้ได้รู้ว่า รหัสสีที่มีความใกล้เคียงของภาพดังกล่าวคือ (93, 93, 93) หรือ RGB(93, 93, 93,) เราสามารถนำไปต่อยอดได้เพื่อ code สีของภาพต่างๆเป็นต้น