การแปลงสีจาก HEX เป็น RGB นั้นง่ายดายพอๆ กับการแปลงค่าตัวเลขจากระบบเลขฐานสิบหกไปเป็นเลขทศนิยม เพื่อที่จะแปลงสีฐานสิบหก #32A852
, เราแบ่งรหัสออกเป็นสองคู่ 32 A8 52
และแปลงแต่ละคู่ให้เป็นค่าทศนิยม:
32 = 50 A8 = 168 52 = 82
#32A852 = RGB(50, 168, 82)
เลขฐานสิบหก
อธิบายระบบเลขฐาน 16 - ระบบตัวเลขที่ประกอบด้วยสัญลักษณ์ 16 ตัว ใช้ตัวเลขตั้งแต่ 0 ถึง 9 เพื่อแสดงตัวเลขตั้งแต่ 0 ถึง 9 และตัวอักษร A ถึง F เพื่อแสดงตัวเลขตั้งแต่ 10 ถึง 15
มักใช้ในวิทยาการคอมพิวเตอร์และคณิตศาสตร์เพื่อแสดงรหัสไบนารี่ในรูปแบบที่มนุษย์สามารถอ่านได้
ต่างจากคอมพิวเตอร์หรือนักวิทยาศาสตร์ พวกเราส่วนใหญ่ใช้ระบบเลขฐานสิบ ประกอบด้วยตัวเลขตั้งแต่ 0 ถึง 9 และเป็นวิธีมาตรฐานในการใช้ตัวเลข เราเริ่มเรียนรู้มันในโรงเรียนอนุบาลและเราใช้มันทุกวัน:
รถยนต์ขับด้วยความเร็ว 10 ไมล์ต่อชั่วโมง แมวหนัก 4 กก หนึ่งเดือนประกอบด้วย 30 วัน
RGB
ย่อมาจากเฉดสีแดง เขียว และน้ำเงินที่สามารถผสมกันเพื่อสร้างสีต่างๆ ได้ เป็นวิธีมาตรฐานในการสร้างภาพสำหรับหน้าจอทีวี จอคอมพิวเตอร์ และจอแสดงผลสมาร์ทโฟน
เพื่อให้แม่นยำยิ่งขึ้น RGB เป็นรูปแบบสีแบบเติมแต่ง ซึ่งหมายความว่าคุณต้องเพิ่มเฉดสีเข้าด้วยกันเพื่อสร้างสีที่แตกต่าง
ลองนึกภาพการเรียงสีซ้อนกัน:
บันทึก: อุปกรณ์ที่แตกต่างกันจะสร้างค่า RGB ที่แตกต่างกัน อุปกรณ์แต่ละเครื่องใช้ทฤษฎีการผสมสีที่แตกต่างกัน ซึ่งหมายความว่าสี RGB จะไม่เหมือนกันในทุกอุปกรณ์ และต้องมีการจัดการสีเพื่อให้มีลักษณะเหมือนกัน
ในการอธิบายสีในรูปแบบสี RGB คุณต้องบอกว่าต้องใช้สีแดง เขียว และน้ำเงินมากน้อยเพียงใด
คุณระบุว่าต้องใช้สีแดง เขียว และน้ำเงินมากน้อยเพียงใดโดยใช้ RGB triplet (อาร์ จี บี)
โดยที่แต่ละองค์ประกอบสามารถเปลี่ยนแปลงได้ตั้งแต่ศูนย์จนถึงค่าสูงสุดที่กำหนดไว้
หากองค์ประกอบทั้งหมดเป็นศูนย์ (0, 0, 0)
- ผลลัพธ์ที่ได้คือสีดำ
หากองค์ประกอบทั้งหมดอยู่ในระดับสูงสุด (255, 255, 255)
- ผลลัพธ์ที่ได้คือสีขาว
การผสมตัวเลขเหล่านี้ทำให้เกิดสีที่ต่างกัน (255, 255, 0)
- ผลที่ได้คือสีเหลือง
สิ่งนี้เรียกว่า ความลึกของสี และวัดเป็นบิต
ในปี 2018 จอแสดงผลทีวี คอมพิวเตอร์ และสมาร์ทโฟนเกือบทุกเครื่องใช้ความลึกของสี 24 บิต สีที่แท้จริง. รองรับแปดบิตสำหรับแต่ละสีจากสามสี หรือรวมทั้งหมด 24 บิต
นี้ให้ 28 หรือ 256 ค่าที่เป็นไปได้สำหรับสีแดง เขียว และน้ำเงิน:
256 x 256 x 256 = 16,777,216 สีที่เป็นไปได้ทั้งหมดในจานสีจริง
ตอนนี้เรารู้ความแตกต่างระหว่างเลขฐานสิบหกและเลขฐานสิบแล้ว เรามาดูกันว่าเราจะแปลงจากที่หนึ่งไปอีกที่หนึ่งได้อย่างไร
ดังที่เราทราบอยู่แล้ว ในระบบเลขฐานสิบหก ตัวเลขตั้งแต่ 0 ถึง 9 แทน 0 ถึง 9 และตัวอักษร A ถึง F แทน 10 ถึง 15 ในระบบทศนิยม
นี่คือตารางเชิงลึกที่สามารถอธิบายการแปลงจากเลขฐานสิบหกเป็นเลขทศนิยมได้ดี:
ในการแปลง HEX เป็น RGB คุณต้องแบ่งค่าเลขฐานสิบหกออกเป็นคู่ๆ สองคู่แล้วแปลงเป็นเลขฐานสิบ
ตัวอย่าง #1: แปลงสีแดง #เอฟเอฟ0000
ถึง RGB:
เอฟเอฟ = 255 00 = 0 00 = 0 RGB = (255, 0, 0)
ตัวอย่าง #2: แปลงเป็นสีเขียว #00เอฟเอฟ00
ถึง RGB:
00 = 0 เอฟเอฟ = 255 00 = 0 RGB = (0, 255, 0)
ตัวอย่าง #3: แปลงเป็นสีฟ้า #0000เอฟเอฟ
ถึง RGB:
00 = 0 00 = 0 เอฟเอฟ = 255 RGB = (0, 0, 255)
ตัวอย่าง #4: แปลงเป็นสีดำ #000000
ถึง RGB:
00 = 0 00 = 0 00 = 0 RGB = (0, 0, 0)
ตัวอย่าง #5: แปลงเป็นสีขาว #เอฟเอฟเอฟเอฟเอฟเอฟ
ถึง RGB:
เอฟเอฟ = 255 เอฟเอฟ = 255 เอฟเอฟ = 255 RGB = (255, 255, 255)
โบนัส ตัวอย่าง #6: แปลงสีทอง #เอฟเอฟD700
ถึง RGB:
เอฟเอฟ = 255 D7 = 215 00 = 0 RGB = (255, 215, 0)
ในการแปลง RGB เป็น HEX คุณต้องแปลงค่าสีแดง เขียว และน้ำเงินจากทศนิยมเป็นเลขฐานสิบหก
ตัวอย่าง #1: แปลงสีแดง (255, 0, 0)
ถึง ฐานสิบหก:
ร = 255 = เอฟเอฟ ช = 0 = 00 บี = 0 = 00 ฐานสิบหก = #เอฟเอฟ0000
ตัวอย่าง #2: แปลงเป็นสีเขียว (0, 255, 0)
ถึง ฐานสิบหก:
ร = 0 = 00 ช = 255 = เอฟเอฟ บี = 0 = 00 ฐานสิบหก = #00เอฟเอฟ00
ตัวอย่าง #3: แปลงเป็นสีฟ้า (0, 0, 255)
ถึง ฐานสิบหก:
ร = 0 = 00 ช = 0 = 00 บี = 255 = เอฟเอฟ ฐานสิบหก = #0000เอฟเอฟ
ตัวอย่าง #4: แปลงเป็นสีดำ (0, 0, 0)
ถึง ฐานสิบหก:
ร = 0 = 00 ช = 0 = 00 บี = 0 = 00 ฐานสิบหก = #000000
ตัวอย่าง #5: แปลงเป็นสีขาว (255, 255, 255)
ถึง ฐานสิบหก:
ร = 255 = เอฟเอฟ ช = 255 = เอฟเอฟ บี = 255 = เอฟเอฟ ฐานสิบหก = #เอฟเอฟเอฟเอฟเอฟเอฟ
โบนัส ตัวอย่าง #6: แปลงสีทอง (255, 215, 0)
ถึง ฐานสิบหก:
ร = 255 = เอฟเอฟ ช = 215 = D7 บี = 0 = 00 ฐานสิบหก = #เอฟเอฟD700
ดังที่เราเห็นจากตัวอย่างด้านบน ความแตกต่างหลักระหว่าง Hex และ RGB ก็คือว่ามันใช้ระบบตัวเลขที่แตกต่างกัน HEX ใช้เลขฐานสิบหก และ RGB ใช้เลขฐานสิบ
การแปลงสีจาก HEX เป็น RGB นั้นง่ายดายพอๆ กับการแปลงค่าตัวเลขจากระบบเลขฐานสิบหกไปเป็นเลขฐานสิบ
จากประสบการณ์ของเราและจากสิ่งที่ทีมงานของเราสังเกตเห็นตลอดหลายปีที่ผ่านมา มีการใช้เลขฐานสิบหกบ่อยกว่า RGB โดยเฉพาะในการพัฒนาเว็บไซต์และอุตสาหกรรมการออกแบบเว็บไซต์
อย่างไรก็ตาม ไม่สำคัญว่าคุณจะใช้สีไหนเพราะทั้งสองสีมีสีเดียวกัน ข้อเสนอแนะเดียวคือรักษาความสม่ำเสมอ
หากคุณเริ่มใช้ RGB ตลอดทั้งโครงการบนเว็บของเรา ให้ยึดถือไว้ หากคุณเริ่มใช้ HEX ทั่วทั้งโครงการเว็บของเรา ให้ลองใช้เฉพาะ HEX เท่านั้น