Color Shades Generator: สร้าง Tints และ Shades จากสีหลักสำหรับ Design System
รู้จักวิธีสร้าง tints และ shades ด้วยการผสมสีหลักเข้ากับสีขาวและสีดำ พร้อมใช้สร้าง color scale สำหรับ design system ของทีมคุณ
Table of Contents
interface ที่ดูสวยและเนียนตาทุกตัวล้วนอาศัย "ครอบครัวสี" ที่สัมพันธ์กัน ไม่ใช่สีเดี่ยว ๆ หนึ่งสี — button ต้องมีสีตอน hover, badge ต้องมีพื้นหลังอ่อน ๆ, กราฟต้องมีชุดสีที่ไล่ระดับสอดคล้องกัน การหยิบสีพวกนี้ด้วยมือทีละสีนั้นทั้งน่าเบื่อและควบคุมความสม่ำเสมอยากมาก เปิดโปรแกรมออกแบบ ขยับสี เช็กด้วยตา copy ค่ามา แล้ววนซ้ำไปเรื่อย ๆ Color Shades Generator ตัดปัญหาเหล่านี้ทิ้งด้วยการสร้าง scale ของ tints และ shades ที่สมบูรณ์จากสีหลักเพียงสีเดียวภายในไม่กี่วินาที
เครื่องมือจะผสมสีที่คุณเลือกเข้ากับสีขาวและสีดำแบบเป็นขั้น ๆ เท่า ๆ กัน (linear steps) ได้ ramp ที่สมดุลโดยมีสีหลักอยู่กลางพอดี ทุก swatch แสดงค่า HEX, RGB และ HSL ครบ พร้อมปุ่ม copy ค่า HEX ขึ้น clipboard ได้ในคลิกเดียว และเพราะทุกอย่างรันใน browser ของคุณล้วน ๆ จึงไม่ต้องสมัครสมาชิก ไม่ต้องอัปโหลดอะไร และไม่ต้องรอ
ไม่ว่าคุณกำลังประกอบ design-system palette, สร้าง Tailwind-style color ramp แบบ 50–900 หรือแค่อยากสำรวจ variations ของ brand color คู่มือนี้จะอธิบายว่าตัว generator ทำงานอย่างไร และจะใช้ให้เต็มประสิทธิภาพได้แบบไหน
ทำไมต้องใช้ Color Shades Generator?
- ขั้นสีสม่ำเสมอแบบคณิตศาสตร์ — การหยิบสีด้วยมือมักได้ ramp ที่กระโดดไม่เท่ากัน มองเห็นรอยต่อชัดเจน การ mix แบบเชิงเส้นกับขาวและดำการันตีว่าแต่ละขั้นห่างจากข้าง ๆ เท่า ๆ กัน ให้ความรู้สึกที่เป็นระบบและมืออาชีพ
- ได้ design-system palette ทันที — design system ต้องการ color tokens ที่คาดเดาได้: tint อ่อนสำหรับพื้นหลัง โทนกลางสำหรับเส้นขอบ โทนเข้มสำหรับตัวหนังสือ สีหลักหนึ่งสีบวกกับ scale ที่ generate มา = ชุด token ครบในทันที
- Tailwind-style ramp โดยไม่ต้อง config อะไรเพิ่ม — color scale ของ Tailwind (50 ถึง 900) ก็คือแนวคิดนี้เป๊ะ ๆ: tints อยู่เหนือสีหลัก shades อยู่ใต้สีหลัก ตัว generator ผลิต ramp รูปทรงเดียวกันที่เอาไปแปะใน tailwind.config.ts ได้เลย
- เห็นสามฟอร์แมตในที่เดียว — ทุก swatch แสดง HEX, RGB และ HSL พร้อมกัน copy ได้ตามที่ stylesheet, เครื่องมือออกแบบ หรือโค้ด canvas ต้องการ ไม่ต้องเปิดตัวแปลงสีแยก
- label บน swatch เลือกสีอัตโนมัติตาม contrast — ตัวอักษรบน swatch สลับดำ/ขาวอัตโนมัติตาม relative luminance แบบ WCAG อ่านได้ทั้งบน tint จางและ shade เข้ม
- ฟรี เป็นส่วนตัว และทันที — ทุกอย่างรันใน browser 100% สีของคุณไม่เคยออกจากเครื่อง ไม่มีอะไรต้องติดตั้งหรือจ่ายเงิน
ฟีเจอร์เด่น
| ฟีเจอร์ | ทำอะไร |
|---|---|
| ช่องกรอก HEX | ใส่สีหลักเป็นค่า HEX ใดก็ได้ (ค่า default #3b82f6) |
| preset swatches 10 สี | เริ่มเร็วจากแดง ส้ม เหลือง เขียว ฟ้า น้ำเงิน ม่วง ชมพู slate หรือดำสนิท |
| ปรับจำนวน steps | เลือกว่าจะสร้าง tints และ shades ข้างละกี่ขั้น (default 5) |
| Tints + Shades | ผสมสีหลักเข้ากับขาว (tints) และดำ (shades) เป็นขั้น ๆ เท่ากัน |
| ผลลัพธ์ HEX/RGB/HSL | ทุก swatch แสดงครบทั้งสามฟอร์แมต |
| Copy คลิกเดียว | คลิก swatch ใดก็ได้เพื่อ copy ค่า HEX ขึ้น clipboard |
| label ตาม contrast | สีตัวอักษรสลับดำ/ขาวอัตโนมัติด้วย WCAG relative luminance |
- สมดุลรอบสีหลัก — สีหลักถูก label เป็น 0 โดยมี tints นับไปด้านหนึ่งและ shades อีกด้านหนึ่ง เป็น ramp สมมาตรแบบ +100 … 0 … -100 เมื่อใช้ default ห้าขั้นต่อข้าง
- preset ครอบคลุมสีหลักๆ ที่ใช้บ่อย — สิบ swatches ในตัวครอบคลุม hue ที่นิยมทั้งหมด บวก slate และดำสนิทสำหรับงาน neutral ทำ prototype palette ทั้งชุดได้ก่อนตัดสินใจใช้ brand color จริง
- คุมความละเอียดด้วยจำนวน steps — steps น้อยได้ palette กะทัดรัดสำหรับโปรเจกต์เล็ก steps มากได้ ramp ละเอียดสำหรับ data visualization หรือระบบ elevation ที่ซับซ้อน
วิธีใช้งาน
- เลือกสีหลัก — พิมพ์ค่า HEX ลงช่อง input หรือคลิก preset swatches หนึ่งในสิบสีเพื่อโหลดทันที
- ตั้งจำนวน steps — ปรับตัวควบคุม steps เพื่อกำหนดว่าจะมี tints และ shades ข้างละกี่ขั้น ค่า default 5 ให้ scale รวมสิบเอ็ด swatch
- ตรวจดู scale ที่ได้ — เครื่องมือจะแสดง tints ไล่จากใกล้ขาวลงมาถึงสีหลัก แล้วต่อด้วย shades จากสีหลักลงไปจนใกล้ดำ แต่ละ swatch มี weight กำกับพร้อมค่า HEX, RGB และ HSL
- copy ค่าที่ต้องการ — คลิก swatch ใดก็ได้เพื่อ copy HEX ขึ้น clipboard แล้วเอาไปแปะใน CSS, Tailwind config หรือเครื่องมือออกแบบ
- วน iterate — ลองเปลี่ยนสีหลักหรือจำนวน steps แล้ว generate ใหม่จนกว่า ramp จะพอดีกับโปรเจกต์
เข้าใจ Tints, Shades และ Color Scale
Tints กับ shades ต่างกันอย่างไร — tint เกิดจากการผสมสีกับสีขาว ทำให้ lightness สูงขึ้นแต่ยังคง hue เดิมไว้ ส่วน shade เกิดจากการผสมสีกับสีดำ ทำให้ lightness ต่ำลง ทั้งสองรวมกันกลายเป็น tonal scale: hue เดียวกันแต่แสดงออกหลายระดับความสว่าง เรื่องนี้สำคัญเพราะ UI ส่วนใหญ่ใช้การไล่ lightness — ไม่ใช่การเพิ่ม hue ใหม่ — ในการสื่อสารลำดับชั้น ความลึก และ state ของสิ่งต่าง ๆ
การ mix แบบเชิงเส้นทำงานอย่างไร — ตัว generator จะ interpolate แต่ละ channel ของ RGB อย่างอิสระระหว่างสีหลักกับเป้าหมาย (ขาวสำหรับ tints ดำสำหรับ shades) ถ้ามีห้าขั้น tint ขั้นแรกจะเป็นสีหลักผสมขาวราว 20% ขั้นที่สอง 40% ไล่ไปจนถึง swatch ที่ใกล้ขาว เพราะขนาด step คงที่ ระยะห่างที่รับรู้ได้ระหว่าง swatch ข้างเคียงจึงสม่ำเสมอ ไม่เกิด transition ที่ขุ่นหรือเป็นแถบแบบที่เจอเวลาปรับสีมือลอย ๆ
ทำไม designer ถึง label ขั้นเป็น 50–900 — Tailwind CSS ทำให้ color ramp แบบมีตัวเลขเป็นที่นิยม: 50 คือ tint อ่อนสุด, 500 อยู่ใกล้สีหลัก และ 900 คือ shade เข้มสุด ตัวเลขเหล่านี้ทำหน้าที่เป็น semantic weight ที่สื่อระดับความสว่างได้ในพริบตา และทำให้ token อ้างถึงง่าย (blue-100 สำหรับพื้นหลัง, blue-600 สำหรับปุ่ม, blue-900 สำหรับตัวหนังสือบนพื้นอ่อน) ระบบตัวเลขของ generator จึง map ลง convention นี้ได้ตรง ๆ — generate scale แล้วกำหนด weight ให้ตรงกับ framework ของคุณ
HEX, RGB และ HSL ต่างกันอย่างไร — HEX (#3b82f6) คือมาตรฐานเว็บที่กระชับที่สุด RGB (rgb(59, 130, 246)) แสดง channel ตรง ๆ เหมาะกับงาน canvas หรือโค้ดเชิงโปรแกรม ส่วน HSL (hsl(217, 91%, 60%)) อธิบาย hue, saturation และ lightness แยกกัน ทำให้เป็นฟอร์แมตที่ intuitive ที่สุดเวลาคิดเรื่องบทบาทของสีใน scale การแสดงทั้งสามฟอร์แมตพร้อมกันทำให้ไม่ต้องหยุดไปแปลงสีกลางคัน
กรณีใช้งานจริง
Design-system palette
design system ต้องการ token สำหรับทุกสถานการณ์: พื้นหลังจาง ๆ เส้นขอบ focus ring สีทึบ และสีตัวหนังสือ เลือก brand hue เป็นสีหลัก generate scale แล้ว map tint อ่อนสุดไปเป็นพื้นหลัง โทนกลางไปเป็นเส้นขอบและ fill รอง และ shade เข้มไปเป็นตัวหนังสือกับจุดเน้น — ได้ palette ที่เข้ากันและ document ได้จากการตัดสินใจเพียงจุดเดียว
Tailwind color ramp
จะต่อยอด Tailwind ด้วยสี custom ให้ generate ramp แล้วแปะค่าลง config:
colors: {
brand: {
50: '#eff6ff',
100: '#dbeafe',
500: '#3b82f6',
900: '#1e3a8a',
},
}
steps ที่สม่ำเสมอของ generator เข้ากับระบบตั้งชื่อ 50–900 ได้โดยธรรมชาติ bg-brand-100, border-brand-300 และ text-brand-700 จึงมาจาก ramp เดียวกันที่สอดคล้องกันหมด
UI states: hover, active และ disabled
element แบบ interactive ต้องมีสีที่เป็นเครือญาติกันแต่ต่างกันชัด ใช้สีหลักเป็น default state, shade ที่เข้มขึ้นหนึ่งขั้นเป็น hover, สองขั้นเป็น active และ tint อ่อนเป็นพื้นหลังตอน disabled เพราะ steps สม่ำเสมอ สีของแต่ละ state จึงรู้สึกตั้งใจ ไม่ใช่หยิบมาสุ่ม และเอาไป document เป็นคู่ token ในระบบได้
Data visualization และสีหมวดหมู่
กราฟมักต้องใช้หลาย variations ของ hue เดียวเพื่อ encode ข้อมูลที่เรียงลำดับจากน้อยไปมาก ramp จาก tint ถึง shade ที่ generate มาให้ sequential scale ที่เรียงรับรู้ได้ (perceptually ordered) สำหรับ heatmap และ choropleth map และการ generate ramp จากหลาย base hue ก็จะได้ครอบครัว categorical ขนานกันที่มีโครงสร้าง lightness เหมือนกัน ทำให้กราฟ multi-series สมดุลตา
Best Practices
- ยึด brand color เป็นจุดตั้งต้น — เริ่ม scale จาก brand hue หลักเพื่อให้ทุก token ที่ derive มา on-brand โดยการก่อสร้าง
- เลข steps ให้พอดีกับงาน — ห้าขั้นต่อข้างครอบคลุมงาน UI ส่วนใหญ่ เพิ่ม steps เฉพาะเมื่อต้องการความละเอียดสูง เช่น ramp สำหรับ data-viz
- ตรวจ contrast ก่อน ship — tint อ่อนที่ดูดีบนจออาจไม่ผ่าน WCAG เมื่อใช้เป็นสีตัวหนังสือ รันคู่ foreground/background สำคัญ ๆ ผ่าน contrast checker ก่อนตัดสินใจเป็น token
- ตั้งชื่อ token แบบ semantic — map ค่าที่ได้ไปเป็นชื่ออย่าง surface, border และ accent แทนตัวเลขลอย ๆ เพื่อให้ palette สื่อความหมาย
- หนึ่ง hue ต่อหนึ่ง scale — อย่าผสม hue กลาง ramp ให้ generate scale แยกของแต่ละ hue แล้วค่อยรวมกันที่ชั้น token
- จดสีหลักเก็บไว้ — บันทึก base HEX ไว้ข้าง palette เพื่อให้เพื่อนร่วมทีมในอนาคต regenerate หรือต่อยอด scale ได้ตรงเป๊ะ
สร้าง Palette ของคุณในไม่กี่วินาที
color scale ที่เป็นระบบคือการลงทุนที่คุ้มที่สุดอย่างหนึ่งในทุกโปรเจกต์: มันสร้างความสม่ำเสมอให้ทุกหน้าจอ และตัดปัญหาการหยิบสีเฉพาะกิจไม่รู้จบ Color Shades Generator เปลี่ยนสีหลักสีเดียวเป็น ramp ของ tints และ shades ที่ไล่ขั้นสม่ำเสมอครบทุกขั้น — พร้อมค่า HEX, RGB และ HSL ที่ copy ได้ทันที — ทั้งหมดรันใน browser ของคุณ ฟรี ไม่ต้องสมัครสมาชิก เลือกสี กำหนด steps แล้วเริ่ม ship palette ที่เข้ากันตั้งแต่วันนี้
เครื่องมือที่เกี่ยวข้อง:
- Color Palette Generator — สร้าง palette หลายสีและชุดสี harmony ทั้งชุดจากสีตั้งต้นเพียงสีเดียว
- Color Converter — แปลงสีระหว่าง HEX, RGB, HSL และฟอร์แมตอื่น ๆ ทันที
- Color Contrast Checker — ตรวจว่าคู่สีตัวหนังสือกับพื้นหลังของคุณผ่านมาตรฐาน WCAG หรือไม่
ขอให้สนุกกับการออกแบบสี!