Konverter Warna — HEX, RGB, HSL & OKLCH
Konversi HEX ke RGB, HSL, OKLCH, OKLAB, dan CMYK di peramban Anda — salin format apa pun dengan satu klik. Gratis, tanpa daftar, warna Anda tidak pernah meninggalkan halaman.
Simulasi buta warna (8 tipe)
Tints / Shades / Tones / Harmonies
Tints
Shades
Tones
Harmonies
Salin sebagai kode
— — — — — Referensi warna umum
Apa Itu Konverter Warna?
Konverter warna adalah utilitas kecil yang menerjemahkan satu nilai warna antara format yang benar-benar dipahami oleh toolchain, sistem desain, dan peramban Anda — HEX, RGB, HSL, HSV, HWB, CMYK, OKLCH, OKLAB, dan 148 nama warna CSS. Konverter online telah menjadi andalan tooling web sejak awal 2000-an, ketika jawabannya hampir selalu adalah textbox HEX-ke-RGB sederhana yang dibuat untuk stylesheet era Geocities. Yang membedakan konverter modern dari alat warisan itu adalah tiga hal: UX bidang-bersatu di mana setiap format dapat diedit secara bersamaan alih-alih dropdown satu-arah, source-of-truth OKLCH yang menahan nilai kanonik secara internal sehingga round-trip tetap bit-stabil, dan matematika perseptual yang didasarkan pada W3C CSS Color 4 alih-alih aritmatika HSL terbelit-gamma yang dikirim generasi 2003.
Ruang warna yang berbeda ada karena masalah yang berbeda membutuhkan representasi yang berbeda, dan tidak ada satu ruang yang baik untuk semuanya. RGB bersifat native-perangkat-keras — ia memetakan langsung ke subpiksel merah, hijau, dan biru LCD atau ke fosfor CRT, dengan setiap kanal dikodekan sebagai bilangan bulat 8-bit dari 0 hingga 255. HEX hanyalah RGB dalam basis-16, dikemas ke dalam string enam karakter untuk CSS singkat dan copy-paste Figma. HSL, HSV, dan HWB adalah ruang kognitif-desainer — reshape silindris dari RGB yang memungkinkan Anda memutar rona, mencerahkan, atau menggelapkan dengan slider yang intuitif. HSL diterbitkan pada 1978 bersamaan dengan HSV oleh Alvy Ray Smith; HWB ditambahkan pada 1996 sebagai model mental yang lebih bersih (Hue + jumlah Putih + jumlah Hitam). CMYK adalah abstraksi proses-cetak — tumpukan tinta substraktif (Cyan, Magenta, Yellow, Key=hitam) yang memodelkan bagaimana tinta menyerap cahaya di atas kertas alih-alih bagaimana layar memancarkannya. OKLCH dan OKLAB adalah ruang perseptual — mereka dirancang sehingga jarak numerik yang sama sesuai dengan jarak perseptual yang sama, yang menjadikannya sangat diperlukan untuk ramp sistem desain dan matematika aksesibilitas. Nama warna adalah warisan CSS: 148 nama SVG/CSS3 seperti `tomato`, `rebeccapurple`, dan `slategray` yang dikirim bersama setiap peramban.
Selama lebih dari dua puluh tahun sRGB "cukup baik" — standar IEC 1996 yang dibangun di sekitar primer fosfor monitor CRT pada masa itu. Ia diam-diam mendefinisikan batas atas dari apa arti warna web. Lalu layar gamut luas memecah asumsi itu. Display P3 Apple mencakup kira-kira 50% lebih banyak dari spektrum yang terlihat daripada sRGB dan sekarang dikirim di setiap iPhone, iPad, dan MacBook dari 2017 dan seterusnya. Rec2020 mencakup lebih banyak lagi dan merupakan standar siaran untuk TV HDR. HSL menanamkan kekhasan gamma sRGB dalam definisinya, itulah sebabnya ramp HSL tampak tidak rata secara visual pada layar gamut luas — hijau pada L=50% tampak lebih terang daripada biru pada L=50%, karena L HSL bersifat geometris, bukan perseptual. Pada 2020 Björn Ottosson menerbitkan OKLAB, ruang warna seragam-perseptual yang diturunkan dari CIE-LAB dengan respons lightness yang dikoreksi dan perilaku yang lebih bersih pada saturasi tinggi. OKLCH adalah bentuk polarnya (Lightness / Chroma / Hue), bentuk yang sama dengan HSL tetapi dengan matematika perseptual diperbaiki. CSS Color 4 menambahkan sintaks `oklch()` dan `oklab()` pada 2022; Chrome 111 mengirim dukungan pada Maret 2023, Safari 15.4 sudah memilikinya pada Maret 2022, dan Firefox 113 mendarat pada Mei 2023. Tailwind v4, dirilis pada 2025, menjadikan OKLCH sebagai format token warna defaultnya; shadcn/ui mengikuti tak lama setelahnya. Alat ini mencerminkan pergeseran itu dengan menjadikan OKLCH sebagai source-of-truth internal — setiap konversi mengalir melalui OKLCH, sehingga round-trip HEX → RGB → OKLAB → HEX tidak pernah mengakumulasi pergeseran float, dan mengedit kanal L OKLCH secara langsung memperbarui setiap bidang lainnya secara persis.
Ruang mana yang Anda jangkau sepenuhnya tergantung pada apa yang Anda lakukan. **HEX** adalah pilihan tepat untuk penyematan web, copy-paste antara alat desain dan kode, dan di mana pun pengidentifikasi yang singkat penting — `#3b82f6` muat dengan nyaman di variabel CSS dan sebagian besar developer front-end dapat membacanya dalam sekali pandang. konverter hex ke RGB khusus menangani arah paling umum dalam satu langkah; konverter RGB ke hex kebalikan mencakup kasus di mana Anda memiliki integer kanal terpisah dari desainer atau pipeline matematika-piksel-gambar. **RGB** adalah untuk pengalamatan perangkat keras langsung — di mana pun Anda membutuhkan integer 0-255 (canvas API, manipulasi gambar, strip LED perangkat keras, atribut warna OpenGL). **HSL** adalah ruang kognitif-desainer warisan — putar rona, cerahkan, gelapkan — dan masih berguna ketika Anda membutuhkan tweak warna CSS cepat di proyek yang belum bermigrasi ke OKLCH. konverter hex ke HSL arah-tunggal adalah jalan pintas yang tepat ketika itu yang Anda butuhkan. **HSV dan HWB** adalah ruang pemilih warna desainer. HSV (Hue, Saturation, Value) cocok dengan kotak saturasi-value yang digambar sebagian besar UI pemilih, sehingga itulah yang dilaporkan Photoshop, Figma, dan Sketch ketika Anda mengklik eyedropper. HWB adalah model mental yang lebih bersih — pilih rona murni, lalu tambahkan putih untuk mencerahkan atau hitam untuk menggelapkan — dan CSS Color 4 menambahkan dukungan `hwb()` native di semua peramban evergreen. **CMYK** adalah untuk persiapan cetak. Penafian tumpul: output CMYK kami adalah aproksimasi naif berbasis-sRGB menggunakan rumus standar `K = 1 - max(R,G,B); C = (1-R-K)/(1-K)`. Akurasi cetak sungguhan memerlukan konversi profil ICC terhadap press, tinta, dan kertas tertentu — biasanya US Web Coated SWOP v2 atau Fogra39 — yang dapat menggeser kanal sebesar 5-15%. Perlakukan CMYK kami sebagai estimasi awal, bukan deliverable. konverter hex ke CMYK arah-tunggal menerapkan rumus yang sama dengan peringatan yang sama. **OKLCH** adalah pilihan default untuk kode baru pada 2025 dan ke depan — sistem desain modern, generasi palet sadar-aksesibilitas, di mana pun keseragaman perseptual penting. konverter hex ke OKLCH arah-tunggal ada untuk migrasi palet-warisan cepat. **OKLAB** adalah sepupu persegi panjang yang digunakan untuk matematika palet: titik-tengah antara dua warna, kalkulasi jarak, matriks simulasi buta warna, dan operasi lain yang membutuhkan aritmatika sumbu-linear. **Nama warna** adalah untuk dokumentasi, komentar kode, mockup, dan prosa — 148 nama warna CSS adalah kamus tetap, dan alat menemukan nama warna terdekat untuk masukan apa pun melalui jarak ΔE di OKLAB.
Graf konversi di jantung dari semua ini terdefinisi dengan baik dan mengejutkan bersih. sRGB dan linear-sRGB terkait oleh kurva gamma piecewise yang ditentukan dalam W3C CSS Color 4 §11.2 (kira-kira eksponen 2,4 dengan segmen linear kecil di dekat nol). Linear-sRGB dan CIE XYZ D65 terkait oleh matriks 3×3 tetap dari CSS Color 4 §15.1. XYZ D65 dan OKLAB terkait oleh dua matriks dan langkah akar-kubik (tahap respons-kerucut LMS, per Ottosson 2020). OKLAB dan OKLCH terkait oleh transformasi Cartesian-ke-polar — `C = sqrt(a² + b²); H = atan2(b, a)`. HEX hanyalah sRGB yang diserialisasi sebagai `#RRGGBB` basis-16. RGB ↔ HSL, RGB ↔ HSV, RGB ↔ HWB adalah transformasi geometris langsung dalam sRGB, didefinisikan di CSS Color 4 §5-7. CMYK adalah rumus naif berbasis-sRGB di atas. Seluruh pipeline adalah graf berarah yang berakar di OKLCH secara internal; setiap format lainnya dihitung darinya pada setiap penekanan tombol.
Di luar konversi inti, alat ini mengirim fitur yang tidak dimiliki generasi warisan. **Deteksi gamut Display P3 dan Rec2020** — tiga lencana menandai apakah warna saat ini berada di dalam rentang yang dapat direproduksi setiap ruang, dengan tombol **Snap ke sRGB** satu-klik yang menggunakan reduksi chroma biner (per algoritma informatif CSS Color 4) untuk mengecilkan warna hingga pas. **Lencana kontras ganda WCAG 2 + APCA Lc** — kedua metrik ditampilkan dalam satu baris sehingga Anda dapat lulus standar regulasi hari ini dan memeriksa-kewarasan dengan metrik perseptual berpandangan-ke-depan. **8 simulasi buta warna** — protanopia, deuteranopia, dan tritanopia melalui matriks dikromasi Brettel-Viénot-Mollon 1997; protanomaly, deuteranomaly, dan tritanomaly melalui matriks trikromasi-anomalus Machado-Oliveira-Fernandes 2009 pada keparahan 0,66; achromatopsia dan achromatomaly parsial melalui bobot luminansi rec601. **Generasi palet seragam-OKLCH** — tint, shade, tone, dan harmonies dibangun dengan menstep kanal L dalam kenaikan yang sama sambil menahan C dan H tetap (konstruksi yang sama dengan generator palet default Tailwind v4). **Snippet kode CSS / Tailwind v4 / SwiftUI / Compose / Flutter** — output siap-tempel untuk lima platform yang ditargetkan tim lintas-tim. **Integrasi EyeDropper API** pada peramban Chromium (Chrome, Edge, Brave, Opera) untuk memilih warna di mana saja di layar termasuk di luar peramban. **State hash URL** — warna saat ini dikodekan ke URL sebagai `#hex=...` atau `#oklch=...` sehingga Anda dapat membagikan tautan langsung ke warna yang persis dengan satu salin.
Semua di alat ini berjalan secara lokal di peramban Anda. Nilai warna Anda tidak pernah diunggah, tidak pernah dicatat, tidak pernah dianalisis, tidak pernah disimpan di server kami atau di server pihak ketiga mana pun. Nol permintaan jaringan saat Anda mengetik — buka tab Network DevTools peramban dan saksikan dengan mata Anda sendiri: mengetik di bidang mana pun memicu nol lalu lintas sama sekali, baik ke domain kami maupun ke endpoint analitik mana pun. Ini membuat alat aman untuk palet brand yang belum diumumkan, sistem token desain internal yang masih dalam pengembangan, mockup draf yang belum siap dibagikan kepada klien, dan pekerjaan warna rahasia lainnya yang menuntut kerahasiaan. Tidak ada cookie yang merekam apa yang Anda tempel; tidak ada analitik yang menyala pada perubahan warna; tidak ada layanan pihak ketiga yang menerima petunjuk apa pun tentang warna yang sedang Anda kerjakan. Postur yang sama meluas ke hash URL: fragmen `#hex=...` hanya hidup di address bar Anda dan tidak pernah dikirim ke server (peramban tidak menyertakan fragmen dalam permintaan HTTP), sehingga bahkan tautan yang dibagikan tidak membocorkan warna ke pihak ketiga selain penerima yang Anda kirim langsung. Untuk tim yang menangani pekerjaan brand pra-peluncuran, kampanye di bawah embargo, palet klien di bawah NDA, atau identitas visual yang sensitif terhadap kebocoran, jaminan privasi ini lebih penting daripada yang disarankan oleh headline kenyamanan. Untuk pembahasan lebih dalam tentang mengapa OKLCH menjadi standar sistem desain pada 2024–2026, baca panduan pendamping kami: Ruang warna OKLCH dijelaskan — mengapa Tailwind v4 mengadopsinya.
// sRGB → linear → XYZ D65 → OKLAB → OKLCH
// References: W3C CSS Color 4 §11-15, Ottosson 2020 (https://bottosson.github.io/posts/oklab/)
// Worked example: #3b82f6 (Tailwind blue-500)
const srgb = [0x3b, 0x82, 0xf6].map(v => v / 255); // [0.231, 0.510, 0.965]
const toLinear = (v) => v <= 0.04045 ? v / 12.92 : Math.pow((v + 0.055) / 1.055, 2.4);
const lin = srgb.map(toLinear); // gamma-decoded linear-sRGB
// linear-sRGB → XYZ D65 (CSS Color 4 §15.1 matrix)
const [lr, lg, lb] = lin;
const x = 0.4124564 * lr + 0.3575761 * lg + 0.1804375 * lb;
const y = 0.2126729 * lr + 0.7151522 * lg + 0.0721750 * lb;
const z = 0.0193339 * lr + 0.1191920 * lg + 0.9503041 * lb;
// XYZ D65 → LMS (Ottosson 2020 matrix), cube-root, → OKLAB
const l_ = Math.cbrt(0.8189330101 * x + 0.3618667424 * y - 0.1288597137 * z);
const m_ = Math.cbrt(0.0329845436 * x + 0.9293118715 * y + 0.0361456387 * z);
const s_ = Math.cbrt(0.0482003018 * x + 0.2643662691 * y + 0.6338517070 * z);
const L = 0.2104542553 * l_ + 0.7936177850 * m_ - 0.0040720468 * s_;
const a = 1.9779984951 * l_ - 2.4285922050 * m_ + 0.4505937099 * s_;
const b = 0.0259040371 * l_ + 0.7827717662 * m_ - 0.8086757660 * s_;
// OKLAB → OKLCH (Cartesian to polar)
const C = Math.sqrt(a * a + b * b);
const H = (Math.atan2(b, a) * 180 / Math.PI + 360) % 360;
console.log(`oklch(${L.toFixed(3)} ${C.toFixed(3)} ${H.toFixed(1)})`);
// → oklch(0.629 0.193 263.4) Fitur Utama
9 Ruang Warna yang Dapat Diedit Secara Bersamaan
Setiap format — HEX, RGB, HSL, HSV, HWB, CMYK, OKLCH, OKLAB, dan nama warna CSS — adalah bidang yang dapat diedit langsung, bukan dropdown satu-arah. Ketik nilai `oklch()` dan HEX, RGB, HSL semua diperbarui; tempel hex dari Figma dan OKLCH diperbarui dengan koordinat perseptual yang cocok. Kursor di bidang yang Anda edit tetap di tempatnya — hanya delapan bidang lainnya yang di-render ulang pada setiap penekanan tombol, sehingga pengeditan mengalir secara alami.
Source-of-Truth OKLCH — Round-Trip Bit-Sempurna
Representasi kanonik internal adalah OKLCH, bentuk polar OKLAB yang seragam-perseptual (Ottosson 2020). Setiap format lainnya diturunkan darinya pada setiap penekanan tombol. Ini berarti round-trip HEX → RGB → HSL → OKLAB → HEX tanpa pergeseran float — hex asli kembali tidak berubah. Konverter warisan yang mengalirkan konversi melalui HSL atau sRGB mengakumulasi error pembulatan per langkah; alat ini tidak.
Peringatan Gamut Display P3 + Rec2020
Tiga lencana langsung (sRGB, Display P3, Rec2020) menunjukkan apakah warna saat ini berada di dalam rentang yang dapat direproduksi setiap ruang. Berguna ketika Anda bekerja di OKLCH dan ingin tahu layar mana yang akan merender nilai secara akurat — banyak warna OKLCH Tailwind v4 melampaui sRGB tetapi muat di P3, yang dapat di-render sebagian besar perangkat Apple sejak 2017. Tombol Snap ke sRGB menggunakan algoritma reduksi-chroma biner CSS Color 4 untuk mengecilkan warna hingga pas.
Kontras WCAG 2 + APCA dalam Satu Baris
Kontras terhadap putih dan hitam ditampilkan menggunakan dua metrik berdampingan: rasio WCAG 2.1 (4,5:1 = teks badan AA, 7:1 = AAA) untuk kepatuhan regulasi hari ini, dan skor APCA Lc (algoritma kontras perseptual WCAG 3 berpandangan-ke-depan). APCA peka-polaritas (terang-di-gelap menimbang berbeda dari gelap-di-terang), yang rumus simetris WCAG 2 salah. Gunakan keduanya: WCAG untuk audit, APCA untuk keterbacaan nyata.
Simulasi Buta Warna Lintas 8 Tipe Defisiensi
Pratinjau langsung untuk tiga dikromasi (protanopia, deuteranopia, tritanopia) melalui matriks Brettel-Viénot-Mollon 1997, tiga trikromasi anomalus (protanomaly, deuteranomaly, tritanomaly) melalui matriks Machado-Oliveira-Fernandes 2009 pada keparahan 0,66, ditambah achromatopsia dan achromatomaly melalui bobot luminansi rec601. Mencakup kira-kira 8% pria dan 0,5% wanita — populasi yang desain Anda harus tetap dapat diakses untuknya.
Tint, Shade, Tone, dan Harmonies Seragam-OKLCH
Ramp palet dihasilkan dengan menstep kanal L dalam kenaikan OKLCH yang sama sambil menahan Chroma dan Hue tetap — konstruksi yang sama yang digunakan Tailwind v4. Hasilnya merata secara perseptual: selisih visual antara stop 400 dan 500 tampak identik dengan selisih antara 500 dan 600, yang tidak dapat dijamin ramp HSL. Harmonies (komplemen, triad, tetrad, split-complement) memutar Hue dengan sudut yang persis dan mempertahankan L+C.
Salin sebagai CSS / Tailwind v4 / SwiftUI / Compose / Flutter
Generasi kode satu-klik untuk lima platform yang dikirim sebagian besar tim lintas-tim: properti kustom CSS (`--color-brand: oklch(0.629 0.193 263.4)`), token `@theme` Tailwind v4, literal SwiftUI `Color(red:green:blue:)`, konstanta Jetpack Compose `Color(0xFF3B82F6)`, Flutter `Color(0xFF3B82F6)`. Sintaks yang persis diharapkan setiap platform, siap ditempel ke stylesheet brand, katalog aset iOS, atau tema Android.
Pemilih OKLCH Implementasi-Tangan (Tanpa Dependensi)
Kotak SL + slider rona + slider alpha ditulis dalam canvas + JavaScript polos tanpa pustaka pemilih eksternal. Gradien OKLCH pada slider rona dihitung dari matematika OKLCH nyata, bukan diaproksimasi dengan HSL, sehingga menyeret slider menghasilkan rotasi rona yang seragam secara perseptual. Bobot bundle tetap di bawah 10 KB untuk seluruh lapisan interaktif; paint pertama cepat bahkan pada beban dingin.
100% Di-Peramban — Tanpa Unggah, Tanpa Pelacakan
Semua matematika konversi, generasi palet, skor kontras, dan deteksi gamut berjalan secara lokal di peramban Anda. Nilai warna Anda tidak pernah ditransmisikan, tidak pernah disimpan di server, tidak pernah dicatat, tidak pernah dianalisis. Nol permintaan jaringan saat Anda mengetik — verifikasi di DevTools. Aman untuk palet brand yang belum diumumkan, token desain internal, mockup draf, dan pekerjaan warna rahasia lainnya.
Perbandingan Alternatif Konverter Warna
ColorHexa
alat perambanKompetitor lama dengan halaman informasi per-warna yang dalam — menghasilkan halaman SEO penuh per hex dengan konversi, palet, harmonies, dan gradien. UI tertanggal (estetika awal-2010-an), tanpa dukungan OKLCH, tanpa kontras APCA, tanpa penanganan gamut-luas. Kuat untuk penemuan SEO warna tertentu ("#FF5733" sebagai query pencarian); lebih lemah untuk pekerjaan desain aktif di mana UX bidang-bersatu penting.
RapidTables
alat perambanPilihan luas konverter satu-arah (HEX ke RGB, RGB ke HEX, HEX ke HSL, dll.) ditambah alat unit lainnya. Setiap konversi adalah halaman terpisah dengan formulir satu-arah — tanpa pengalaman bidang-bersatu langsung. Tanpa dukungan OKLCH, tanpa peringatan gamut, tanpa pemeriksaan kontras. Berguna untuk konversi cepat satu kali ketika Anda tiba dari pencarian Google; alat ini lebih cepat untuk alur kerja apa pun dengan lebih dari satu konversi.
HTMLColorCodes
alat perambanPemilih warna dan generator palet yang kuat dengan UI bersih. UX pemilih bagus untuk eksplorasi visual. Sisi konverter dasar — HEX, RGB, HSL, HSV, CMYK saja; tanpa OKLCH, tanpa OKLAB, tanpa deteksi gamut. Terbaik ketika Anda perlu mengeksplorasi variasi warna secara visual; alat ini menang ketika Anda membutuhkan ruang warna modern atau matematika konversi yang presisi.
OKLCH.com
alat perambanAlat fokus-OKLCH yang dibangun indah oleh Andrey Sitnik (penulis polyfill postcss-oklab-function). Terbaik-di-kelasnya untuk eksplorasi khusus-OKLCH dengan pemilih sadar-gamut-luas dan generasi palet. Tidak mencakup konversi HEX/RGB/HSL/CMYK sebagai output utama — fokus pada OKLCH saja. Jangkau OKLCH.com ketika Anda melakukan pekerjaan desain OKLCH murni; jangkau alat ini ketika Anda membutuhkan konversi lintas-ruang.
ConvertingColors
alat perambanMencakup banyak ruang warna (HEX, RGB, HSL, HSV, CMYK, XYZ, CIELAB, dan beberapa lagi) dengan model halaman-konten-SEO per warna yang serupa dengan ColorHexa. Tidak memiliki dukungan OKLCH modern, tanpa kontras APCA, tanpa penanganan gamut-luas, dan halaman konten yang dihasilkan otomatis terasa seperti pertanian konten. Bagus untuk menggali metadata warna individu; alat ini lebih cepat untuk pekerjaan desain dan aksesibilitas aktif.
IT-Tools
alat peramban open-sourceKoleksi alat dev Vue 3 yang dapat di-self-host bersih, dengan konverter warna di antara banyak utilitas lainnya. UX konsisten di seluruh suite. Konverter warna mencakup HEX, RGB, HSL, HSV, CMYK; tanpa OKLCH, tanpa peringatan gamut, tanpa pemeriksaan kontras, tanpa simulasi buta warna. Layak dijalankan secara lokal jika Anda menginginkan koleksi multi-alat yang di-self-host; alat ini adalah opsi khusus-warna yang lebih dalam.
W3Schools Color Converter
alat perambanToggle HEX/RGB/HSL dasar pada halaman ramah-pemula, di mana-mana dalam hasil pencarian untuk query konverter-warna. Tanpa OKLCH, tanpa fitur lanjutan. Berguna sebagai referensi pengajaran di samping konten penjelas W3Schools. Alat ini menang di setiap sumbu lainnya: lebih banyak ruang, matematika perseptual, fitur gamut + kontras + CVD, ekspor kode Tailwind v4 / SwiftUI / Compose / Flutter modern.
Contoh Konversi Warna
Warna brand Tailwind v4 → OKLCH
#3b82f6
Output OKLCH: `oklch(0.629 0.193 263.4)`. Tempelkan langsung ke blok `@theme` Tailwind v4 sebagai `--color-brand-500: oklch(0.629 0.193 263.4);` dan ramp Anda berikutnya berjajar secara perseptual. Tailwind v4 menstandardisasi OKLCH untuk palet defaultnya pada 2024 karena kanal L menjaga kecerahan perseptual konsisten lintas rona — green-500 dan blue-500 tampak sama terang, hal yang tidak dapat dijamin oleh ramp HSL/RGB. Hex dipertahankan apa adanya jika Anda juga membutuhkan fallback untuk peramban lama.
hex web → literal SwiftUI Color
#FF5733
Output SwiftUI (di bawah Salin sebagai kode → SwiftUI): `Color(red: 255/255, green: 87/255, blue: 51/255)`. Alur kerja iOS / macOS klasik: seorang desainer menjatuhkan hex ke panel brand Figma, Anda menempelnya di sini, dan menyalin literal SwiftUI ke sebuah `View`. Bentuk ekspresi (dengan pembagian `/255` eksplisit) disengaja — bentuk ini lebih tahan terhadap code review daripada `Color(red: 1.0, green: 0.341, blue: 0.2)` yang opaque karena hex brand asli masih terlihat di sumber.
Sampel warna palet desainer → aproksimasi CMYK untuk cetak
#FF6347
Output CMYK: kira-kira `cmyk(0%, 61%, 72%, 0%)`. Ini adalah konversi sRGB → CMYK yang naif menggunakan rumus standar `K = 1 − max(R,G,B); C = (1−R−K)/(1−K)` — berguna sebagai estimasi awal cepat untuk penawaran cetak, tetapi bukan pengganti konversi sungguhan. Percetakan akan menjalankan file melalui profil ICC (biasanya US Web Coated SWOP v2 atau Fogra39) yang disetel untuk press, tinta, dan kertas tertentu, yang dapat menggeser kanal sebesar 5-15%. Perlakukan angka ini sebagai pemeriksaan kewarasan, bukan deliverable.
Warna gamut luas OKLCH → fallback sRGB
oklch(0.7 0.25 30)
Baris gamut langsung menandai warna ini sebagai **di luar sRGB** (Display P3 mencakupnya, Rec2020 mencakupnya). Pada monitor standar warna ini di-render sebagai aproksimasi yang lebih pudar; pada layar yang mendukung P3 (sebagian besar laptop yang dikirim setelah 2017) warna ini di-render dengan saturasi penuh. Klik **Snap ke sRGB** untuk mengurangi chroma hingga warna pas di kubus sRGB, lalu salin hex yang dihasilkan (sekitar `#ef6b50`) sebagai fallback. Source-of-truth OKLCH memungkinkan Anda mempertahankan nilai gamut luas di token desain dan mengirimkan hex yang di-snap sebagai fallback `@supports not (color: oklch(...))`.
Verifikasi kontras WCAG untuk teks badan
#767676
Terhadap putih (`#ffffff`) rasio kontras WCAG 2.1 kembali sekitar **4,54:1** — tepat di atas ambang AA 4,5:1 untuk teks badan normal. Turunkan satu digit menjadi `#777777` dan rasio jatuh ke 4,48:1, yang gagal AA. Nilai APCA Lc dimunculkan berdampingan sebagai metrik berpandangan-ke-depan (draft WCAG 3) — APCA memberi skor pasangan ini sekitar `Lc 60`, sedikit di bawah `Lc 75` yang direkomendasikan APCA untuk teks badan. Gunakan keduanya: WCAG untuk lulus audit hari ini, APCA untuk memastikan hasilnya benar-benar terbaca.
Temukan nama warna CSS terdekat dengan hex brand
#FF6347
Bidang **Named** mengembalikan `tomato (exact)` karena spesifikasi CSS mendefinisikan `tomato` secara harfiah sebagai `#FF6347` — salah satu dari 148 nama warna yang dikirim bersama setiap peramban. Coba meleset-tipis seperti `#FF6348` dan bidang mengembalikan `tomato (nearest, ΔE 0.02)`, memberi tahu Anda nama warna terdekat dan seberapa jauh menggunakan CIE ΔE (Delta-E di ruang OKLAB). Berguna ketika Anda menulis salinan atau komentar dan menginginkan nama warna yang dapat dibaca manusia alih-alih kode hex.
Konversi nilai HSL lama ke OKLCH modern
hsl(220 70% 50%)
Output OKLCH: kira-kira `oklch(0.5 0.187 263)`. L=50% HSL **bukan** 50% secara perseptual — biru pada L=50% tampak jauh lebih gelap daripada kuning pada L=50% karena HSL adalah reshape silindris dari sRGB, bukan ruang warna yang seragam. L=0,5 OKLCH benar-benar sesuai dengan luminansi abu-abu tengah yang dipersepsikan mata Anda. Ketika Anda memigrasikan sistem desain HSL ke OKLCH, harapkan nilai L bergeser (biru naik, kuning turun) — itu adalah sistem yang mengoreksi dirinya sendiri, bukan bug.
Temukan palet 5 tint dan 5 shade dari warna brand
#3b82f6
Bagian **Tints / Shades / Tones / Harmonies** menghasilkan 5 varian lebih terang dan 5 lebih gelap dengan menstep kanal L OKLCH dalam kenaikan yang sama sambil menahan C dan H tetap. Hasilnya adalah ramp yang merata secara perseptual — selisih antara `500` dan `600` tampak sama dengan selisih antara `600` dan `700`, yang dibutuhkan oleh sistem desain. Klik sampel warna mana pun untuk memuatnya sebagai warna aktif, lalu salin hex/OKLCH-nya. Konstruksi yang sama dengan generator palet default Tailwind v4.
Cara Menggunakan Konverter Warna
- 1
Tempel atau ketik warna apa pun dalam format apa pun
Setiap satu dari 9 bidang format (HEX, RGB, HSL, HSV, HWB, CMYK, OKLCH, OKLAB, Named) dapat diedit langsung — tidak ada tombol "Konversi" untuk diklik. Tempel hex dari Figma, ketik nilai `oklch()` dari config Tailwind, jatuhkan `hsl()` dari stylesheet lama, atau bahkan ketik nama warna CSS seperti `tomato`. Alat ini mengurai secara inkremental saat Anda mengetik, sehingga nilai yang setengah-diketik tidak akan menghancurkan yang lain hingga Anda mengomit format yang valid. Input yang tidak valid mendapat error inline yang tenang; input yang valid memperbarui seluruh grid.
- 2
Semua 9 format diperbarui secara instan
Source-of-truth internal adalah OKLCH (seragam perseptual, tidak terbatas-gamut), dan setiap format lainnya diturunkan darinya pada setiap penekanan tombol. Bidang yang sedang Anda ketik mempertahankan posisi kursornya tidak tersentuh — hanya *delapan* bidang lainnya yang di-render ulang. Ini berarti Anda dapat mengedit kanal L OKLCH secara langsung dan menyaksikan hex, RGB, HSL, dan CMYK semua bergeser secara waktu nyata tanpa kehilangan kursor Anda. Matematika konversi berjalan sepenuhnya di JavaScript menggunakan primitif OKLAB yang sama yang dikirim di peramban modern.
- 3
Gunakan pemilih untuk eksplorasi visual
Di bawah grid format adalah kotak saturasi-lightness (seret di mana saja untuk mengatur S+L untuk rona saat ini), slider rona (seret untuk berputar di sekitar roda warna), dan slider alpha (seret untuk mengatur transparansi). Pada peramban berbasis Chromium (Chrome, Edge, Brave) tombol **Eyedropper** mengaktifkan `EyeDropper` API native — klik di mana saja di layar, termasuk di luar jendela peramban, untuk mengambil sampel warna piksel itu. Safari dan Firefox belum mengirim API, sehingga tombolnya disembunyikan di peramban itu dan kotak SL + slider rona tetap menjadi pemilih utama.
- 4
Periksa gamut dan kontras dalam sekilas
Tiga lencana gamut (**sRGB**, **Display P3**, **Rec2020**) menunjukkan apakah warna saat ini berada di dalam rentang yang dapat direproduksi setiap ruang — berguna ketika Anda bekerja di OKLCH dan ingin tahu layar mana yang akan merender nilai secara akurat. Baris kontras menunjukkan rasio WCAG 2.1 terhadap putih dan hitam, ditambah skor APCA Lc (metrik WCAG 3 berpandangan-ke-depan). Lencana lulus / gagal (AA, AAA) muncul inline. Jika warna di luar gamut sRGB, tombol **Snap ke sRGB** mengecilkan chroma hingga pas.
- 5
Salin dalam sintaks native platform Anda
Setiap dari 9 bidang format memiliki tombol **Salin** sendiri — satu klik, nilai mendarat di clipboard Anda, label sebentar beralih ke "Disalin!" sehingga Anda tahu. Di bawah pemilih, bagian **Salin sebagai kode** menghasilkan snippet siap-tempel untuk lima platform: properti kustom CSS, token `@theme` Tailwind v4, literal SwiftUI `Color(red:green:blue:)`, konstanta Jetpack Compose `Color(0xFF...)`, dan Flutter `Color(0xFF...)`. Hash URL (`#hex=...` atau `#oklch=...`) juga diperbarui sehingga Anda dapat membagikan tautan langsung ke warna yang persis.
Kesalahan Konversi Warna yang Umum
Bingung HSL dengan OKLCH
Kedua ruang berbagi bentuk silindris Hue / Lightness / (Saturation atau Chroma) yang sama, yang membuat mereka tampak dapat dipertukarkan di atas kertas. Tidak. L HSL bersifat geometris — diturunkan dari RGB dengan merata-ratakan nilai kanal maks dan min — dan menanamkan kurva gamma sRGB. L OKLCH bersifat perseptual, berlabuh pada model OKLAB. Ramp HSL pada L seragam tampak tidak rata secara terlihat di seluruh rona; ramp OKLCH pada L seragam tetap merata. Jangan menggantikan satu untuk yang lain dalam migrasi sistem desain tanpa penyetelan ulang.
Asumsikan palet HSL seragam secara perseptual: hsl(220 50% 30%) → hsl(220 50% 60%) → hsl(220 50% 90%) Di layar ini tampak berjarak tidak rata.
Gunakan OKLCH untuk ramp seragam-perseptual: oklch(0.30 0.10 220) → oklch(0.60 0.10 220) → oklch(0.90 0.10 220) Di layar ini tampak berjarak rata.
Mempercayai CMYK Naif untuk Cetak
Output CMYK di sini berasal dari rumus buku teks standar `K = 1 - max(R,G,B)` yang diterapkan pada sRGB. Itu adalah perkiraan yang berguna tetapi bukan pengganti konversi yang sungguhan. Percetakan menjalankan file melalui profil ICC (US Web Coated SWOP v2, Fogra39, Japan Color 2011, dll.) yang disetel untuk press, tinta, dan kertas tertentu. CMYK ber-ICC dapat berbeda dari rumus naif sebesar 5-15% per kanal. Kirim hex sRGB asli ke percetakan dan biarkan mereka melakukan konversi yang tepat.
Kirim output CMYK kami langsung ke press: hex #FF6347 → cmyk(0%, 61%, 72%, 0%) Hasil cetak mungkin terlihat keruh atau terlalu jenuh.
Kirim hex asli ke penyedia cetak: hex #FF6347 → biarkan percetakan ICC-konversi terhadap press mereka Hasil cetak cocok dengan warna layar jauh lebih dekat.
Membaca APCA Lc sebagai Angka Kompatibel-WCAG-2
APCA Lc dan rasio WCAG 2 adalah skala berbeda yang mengukur hal berbeda. WCAG 2 memberikan rasio dari 1:1 (tanpa kontras) hingga 21:1 (kontras maks), dengan 4,5:1 lantai AA legal untuk teks badan. APCA memberikan Lc dari 0 hingga ±108 dengan tanda yang menunjukkan polaritas (positif untuk teks gelap di latar belakang terang, negatif untuk teks terang di latar belakang gelap). Lc 60 tidak memetakan ke WCAG 4,5:1; hubungannya non-linear dan bergantung-arah. Gunakan kedua metrik, berdampingan, bukan satu sebagai terjemahan dari yang lain.
Pura-pura Lc 60 = WCAG 4.5:1: APCA Lc 60 → "ini lulus AA" Rasio WCAG 2 untuk pasangan yang sama mungkin 3.8:1 (gagal AA).
Periksa kedua metrik secara independen: Rasio WCAG 2 ≥ 4.5:1 untuk kepatuhan teks badan AA, DAN APCA |Lc| ≥ 75 untuk keterbacaan dunia-nyata. Keduanya harus lulus, bukan satu menggantikan yang lain.
Menggunakan HSL untuk Shade Sistem-Desain
Menghasilkan ramp 50/100/200/.../900 dengan menstep kanal L HSL menghasilkan ramp yang tidak rata secara visual karena L HSL tidak perseptual. Stop gelap tampak terlalu gelap, stop terang tampak terlalu terang, dan stop tengah mengompresi. Desainer memperbaikinya dengan menyetel-tangan setiap stop, latihan multi-jam per warna brand. OKLCH memecahkan masalah dengan konstruksi — langkah L yang sama tampak sama — sehingga ramp merata pada percobaan pertama.
Step L HSL untuk shade: hsl(220 50% 30%) / hsl(220 50% 60%) / hsl(220 50% 90%) 90% tampak pudar; 30% tampak jauh lebih gelap daripada selisih ke 60%.
Step L OKLCH untuk shade: oklch(0.30 0.10 220) / oklch(0.60 0.10 220) / oklch(0.90 0.10 220) Setiap langkah tampak seperti selisih visual yang sama.
Lupa Alpha Saat Menyalin HEX
Hex 8 digit (`#RRGGBBAA`) dan singkatan 4 digit (`#RGBA`) mengkodekan transparansi alpha di pasangan terakhir. CSS mendukung keduanya; parser yang lebih lama (termasuk beberapa preprosesor CSS warisan dan alat desain pra-2018) hanya memahami hex 6 digit dan secara diam-diam memotong alpha. Hasilnya: warna yang Anda harapkan 50% transparan di-render sebagai sepenuhnya opak. Selalu verifikasi sintaks target menerima hex 8 digit sebelum menyalin nilai yang membawa-alpha; untuk target warisan, kembali ke `rgba()`.
Salin hex 8 digit ke parser warisan: #FF573380 → parser memotong → #FF5733 (tanpa alpha) Transparansi 50% diam-diam hilang.
Verifikasi target mendukung hex 8 digit, atau gunakan rgba(): untuk CSS modern: #FF573380 (hex 8 digit) untuk dukungan warisan: rgba(255, 87, 51, 0.5) (selalu didukung) Sintaks alpha eksplisit menghindari pemotongan diam-diam.
Snap ke sRGB Tanpa Mempertimbangkan Display P3
Snap ke sRGB adalah jaring pengaman yang berguna untuk konteks warisan, tetapi menerapkannya tanpa pandang bulu mengalahkan layar gamut-luas yang mungkin Anda desain. Sebagian besar perangkat Apple dari 2017 dan seterusnya merender Display P3 secara native; banyak perangkat Android modern dan layar laptop juga. Warna OKLCH gamut-luas yang melampaui sRGB tetapi muat di P3 tampak terasa lebih jenuh pada perangkat keras P3 daripada aproksimasi sRGB yang di-snap. Periksa lencana gamut P3 terlebih dahulu; hanya snap saat menargetkan konteks warisan sRGB-saja.
Snap setiap warna OKLCH ke sRGB secara default: oklch(0.7 0.25 30) → snap → oklch(0.7 0.18 30) Layar P3 kehilangan saturasi 30%+ tanpa alasan.
Periksa lencana Display P3 terlebih dahulu: jika muat-P3: pertahankan nilai gamut-luas, tambahkan fallback sRGB melalui @supports jika melampaui P3: lalu snap ke sRGB Biarkan perangkat keras gamut-luas melakukan pekerjaannya.
Siapa yang Menggunakan Alat Ini
- Developer Frontend Bermigrasi ke Token OKLCH Tailwind v4
- Tailwind v4 menstandardisasi OKLCH untuk palet defaultnya pada 2024. Memigrasikan sistem desain lama berbasis-HSL atau berbasis-hex berarti mengonversi ratusan warna brand ke OKLCH. Tempel setiap hex, salin output OKLCH, jatuhkan ke blok `@theme`. Lencana gamut langsung menandai warna apa pun yang melampaui sRGB sehingga Anda dapat memutuskan apakah akan mempertahankan nilai gamut-lebih-lebar untuk layar Display P3.
- Desainer Menerjemahkan Warna Figma ke iOS / Android
- Figma mengekspor hex secara default, tetapi iOS menginginkan literal SwiftUI `Color(red:green:blue:)` dan Android menginginkan konstanta Jetpack Compose `Color(0xFF...)`. Tempel hex Figma sekali, salin snippet SwiftUI untuk insinyur iOS dan snippet Compose untuk insinyur Android — keduanya sudah dalam sintaks yang persis diharapkan setiap platform, dengan hex asli dipertahankan dalam komentar untuk keterlacakan.
- Desainer Menyiapkan Proof Cetak (Aproksimasi CMYK)
- Ketika warna brand harus muncul di kartu nama yang dicetak, aproksimasi CMYK memberikan estimasi cepat untuk dibagikan dengan percetakan sebelum konversi ICC yang tepat. Tempel hex brand, salin persentase CMYK, kirim ke percetakan untuk penawaran harga cepat — lalu serahkan kepada konversi sadar-profil-ICC milik percetakan untuk pencocokan warna akhir terhadap press tertentu.
- Insinyur Aksesibilitas Memverifikasi WCAG dan APCA
- WCAG 2.1 adalah standar regulasi (ADA, EAA, Section 508) hari ini; APCA Lc adalah penerus WCAG 3 yang diusulkan. Kedua metrik ditampilkan berdampingan berarti seorang desainer dapat memverifikasi warna teks-badan mencapai 4,5:1 WCAG terhadap putih, lalu memeriksa-kewarasan bahwa ia juga melewati APCA Lc 75, dalam satu layar — tanpa berpindah antara dua kalkulator terpisah.
- Pendidik Mengajarkan Konsep Ruang-Warna
- Tampilan sembilan-bidang yang bersamaan membuat hubungan ruang-warna terlihat. Ketik nilai OKLCH, saksikan HSL melayang karena L berarti hal yang berbeda di setiap ruang. Seret slider rona dan saksikan hex, RGB, dan CMYK semua diperbarui. Tunjukkan lencana gamut berubah merah saat Anda mendorong chroma melewati sRGB. Alat ini adalah demo kelas-nya sendiri untuk kursus grafis tingkat-kuliah atau HCI.
- Manajer Brand Menemukan Nama Warna CSS Terdekat
- Ketika salinan pemasaran mengatakan "aksen berwarna tomato" tetapi hex brand sebenarnya adalah `#FF6347`, bidang Named mengembalikan `tomato (exact)` karena itu adalah hal yang persis diselesaikan `tomato` di spesifikasi CSS. Untuk hex yang nyaris-meleset, bidang mengembalikan nama warna terdekat dengan jarak ΔE di OKLAB — berguna untuk dokumentasi, prosa, dan penamaan warna kasual.
- Web Dev Mengonversi Palet HEX Warisan ke OKLCH
- Situs yang lebih tua mungkin memiliki palet brand 50-warna yang didefinisikan dalam properti kustom CSS sebagai kode hex. Memodernisasi ke OKLCH memungkinkan tim brand mengekspresikan ramp yang sama dalam ruang yang seragam-perseptual. Tempel setiap hex, salin output OKLCH, tukar ke definisi variabel. Panel Tints/Shades di bawah memverifikasi ramp yang dihasilkan merata secara visual sebelum mengirim.
- Pemelihara Open-Source Mendokumentasikan Token Desain
- Dokumentasi token desain biasanya perlu menunjukkan warna yang sama dalam beberapa sintaks — hex untuk blok kode CSS, OKLCH untuk tabel spesifikasi, nama warna untuk menyebutkan dalam prosa. Tampilan bidang-bersamaan memungkinkan seorang pemelihara menyalin masing-masing dalam satu kali jalan alih-alih menjalankan tiga konversi terpisah. Hash URL yang dapat dibagikan juga memungkinkan kontributor menautkan ke warna yang persis sedang dibahas dalam isu GitHub.
Matematika & Algoritma Konversi Warna
- OKLCH sebagai Source-of-Truth Internal
- Alat menahan nilai warna kanonik sebagai triple OKLCH secara internal. Setiap bidang yang dapat diedit menurunkan nilai tampilannya dari triple itu pada setiap penekanan tombol; setiap edit pengguna memperbarui triple terlebih dahulu, lalu memicu render ulang dari delapan bidang lainnya. Ini menghilangkan pergeseran float per-langkah yang menyusahkan konverter yang menggunakan HSL atau sRGB sebagai pivot. Pilihan OKLCH di atas OKLAB disengaja — bentuk polar mempertahankan Hue sebagai sumbu yang stabil, sehingga menyeret slider rona tidak secara tidak sengaja melintasi-fade melalui abu-abu. Per makalah 2020 Björn Ottosson, keseragaman perseptual OKLAB adalah argumen terkuat untuk memperlakukannya sebagai lingua franca matematika warna modern.
- Sumber Matriks (W3C CSS Color 4 + Ottosson 2020)
- Setiap matriks konversi dalam basis kode dikutip ke sumber primernya. Fungsi gamma piecewise sRGB ↔ linear-sRGB adalah W3C CSS Color 4 §11.2 (`v <= 0.04045 ? v/12.92 : ((v+0.055)/1.055)^2.4`). Matriks 3×3 linear-sRGB ↔ CIE XYZ D65 adalah CSS Color 4 §15.1. Matriks XYZ D65 ↔ LMS dan langkah akar-kubik OKLAB berasal dari implementasi referensi `https://bottosson.github.io/posts/oklab/` Ottosson, persis seperti yang dipublikasikan. Tidak ada matriks yang dihitung ulang atau diturunkan ulang — menyalinnya apa adanya menjaga output identik dengan vektor referensi spesifikasi.
- Rumus CMYK Naif dan Peringatan ICC
- Output CMYK kami menggunakan rumus buku teks standar: `K = 1 - max(R, G, B); C = (1-R-K)/(1-K); M = (1-G-K)/(1-K); Y = (1-B-K)/(1-K)` yang beroperasi pada nilai sRGB yang dinormalkan. Ini adalah aproksimasi yang disengaja. Akurasi cetak sungguhan memerlukan konversi profil ICC terhadap press tertentu, tinta (mis. US Web Coated SWOP v2, Fogra39, Japan Color 2011), dan kertas, yang dapat menggeser kanal sebesar 5-15%. Kami memunculkan bidang CMYK dengan penafian yang terlihat sehingga pengguna tidak mengirim nilai kami langsung ke press. Perlakukan output sebagai pemeriksaan kewarasan untuk penawaran, bukan deliverable.
- Deteksi Gamut melalui Pemeriksaan Rentang-Kanal
- Sebuah warna dianggap di-gamut untuk ruang target (sRGB, Display P3, Rec2020) jika setiap kanal berada di dalam `[-ε, 1 + ε]` setelah konversi ke primer ruang itu, di mana `ε = 1e-7` untuk menyerap noise presisi float di sekitar batas. Lencana gamut untuk setiap ruang berubah merah ketika kanal mana pun melampaui rentang. Ini menangkap kasus umum — warna OKLCH gamut-luas seperti `oklch(0.7 0.4 30)` melaporkan di-luar-sRGB tetapi di-P3, memberi tahu Anda layar mana yang akan merendernya secara akurat. Pemeriksaan berjalan pada setiap penekanan tombol.
- Algoritma Snap Reduksi-Chroma
- Snap ke sRGB menggunakan pencarian biner pada sumbu Chroma: tahan L dan H tetap pada nilai saat ini, cari C ∈ [0, currentC] untuk C terbesar yang konversi sRGB-nya tetap di-gamut. Pencarian berjalan paling banyak 30 iterasi (presisi ~10⁻⁹), yang lebih dari cukup untuk akurasi visual. Ini cocok dengan algoritma pemetaan-gamut informatif yang dijelaskan di CSS Color 4 §13 — mempertahankan lightness dan rona sementara mengurangi hanya chroma menjaga warna yang di-snap dikenali sebagai keluarga rona yang sama. Kami tidak meng-clip kanal RGB langsung karena itu mendistorsi rona secara mencolok (terutama di biru).
- Matriks CVD Brettel + Machado
- Simulasi buta warna menggunakan dua keluarga matriks yang dipublikasikan. Tiga dikromasi — protanopia, deuteranopia, tritanopia — menggunakan matriks Brettel-Viénot-Mollon 1997 yang beroperasi di RGB linear (decode gamma terlebih dahulu, terapkan matriks, encode gamma kembali). Tiga trikromasi anomalus — protanomaly, deuteranomaly, tritanomaly — menggunakan matriks Machado-Oliveira-Fernandes 2009 pada keparahan 0,66, yang sesuai dengan pasien trikromasi-anomalus tipikal. Achromatopsia dan achromatomaly parsial menggunakan bobot luminansi rec601 (`0.299R + 0.587G + 0.114B`) untuk proyeksi grayscale. Semua delapan simulasi di-render pada setiap perubahan warna.
- WCAG 2 vs APCA: Mana Digunakan Kapan
- WCAG 2.x (standar saat ini) menghitung rasio kontras simetris dari luminansi relatif: `(L1 + 0.05) / (L2 + 0.05)`, target 4,5:1 untuk teks badan normal dan 7:1 untuk AAA. Itu adalah lantai kepatuhan legal untuk audit aksesibilitas pada 2026. APCA (Accessible Perceptual Contrast Algorithm) adalah penerus WCAG 3 yang diusulkan — peka-polaritas (terang-di-gelap memberi skor berbeda dari gelap-di-terang), lebih berkorelasi dengan keterbacaan yang dipersepsikan manusia, target `|Lc| ≥ 75` untuk teks badan. Kedua metrik ditampilkan dalam satu baris memungkinkan desainer mencapai WCAG 2 untuk kepatuhan dan APCA untuk keterbacaan dunia-nyata tanpa berpindah antara dua kalkulator terpisah.
Praktik Terbaik untuk Konversi Warna
- Lebih Pilih OKLCH untuk Token Sistem-Desain; HEX untuk Warisan
- Untuk setiap sistem desain baru yang dikirim pada 2025 atau setelahnya, definisikan warna brand dan ramp palet di OKLCH. Sumbu L memberikan ramp yang merata secara perseptual otomatis; sumbu Chroma dapat mengalamatkan warna gamut-luas yang tidak dapat dikodekan hex. Pertahankan fallback hex untuk peramban yang lebih lama melalui `@supports not (color: oklch(0 0 0))` atau PostCSS saat-build, tetapi jadikan OKLCH nilai kanonik di toko token Anda. Sistem warisan dengan ribuan variabel hex yang ada dapat tetap hex hingga migrasi yang direncanakan — jangan berpaling untuk kepentingannya sendiri.
- Perlakukan Output CMYK sebagai Aproksimasi, Konfirmasi dengan Penyedia Cetak
- Angka CMYK yang dimunculkan alat ini adalah rumus naif berbasis-sRGB, bukan konversi profil-ICC. Gunakan untuk penawaran perkiraan dan komp internal. Sebelum run cetak nyata, kirim hex asli (bukan aproksimasi CMYK) ke penyedia cetak dan biarkan mereka menjalankan konversi ICC mereka sendiri terhadap press, tinta, dan kertas tertentu. Pergeseran kanal 5-15% dari konversi yang tepat dengan mudah dapat mengubah merah tajam menjadi oranye keruh jika aproksimasi dikirim langsung.
- Gunakan APCA Lc untuk Aksesibilitas Berpandangan-ke-Depan
- WCAG 2.x akan terus menjadi lantai regulasi selama beberapa tahun lagi, tetapi APCA adalah arah yang dituju standar. Untuk desain baru, capai `|Lc| ≥ 75` untuk teks badan dan `|Lc| ≥ 60` untuk teks besar di samping lantai WCAG 2.1. APCA menangkap masalah keterbacaan yang dilewatkan rasio simetris WCAG 2 — khususnya teks goresan-tipis pada latar belakang terang, di mana rasio WCAG terlihat baik tetapi teks sebenarnya menghilang pada jarak baca normal.
- Jalankan Warna Gamut-Luas Melalui Pemeriksaan Gamut Display P3
- Jika Anda menargetkan perangkat keras Apple modern (iPhone, iPad, MacBook dari 2017+) atau mengirim konten sadar-HDR, definisikan warna brand di OKLCH dan gunakan lencana Display P3 untuk memverifikasi bahwa mereka muat di P3 bahkan jika mereka melampaui sRGB. Warna gamut-lebih-lebar tampak terasa lebih jenuh pada layar P3 dan menurun dengan elegan melalui kompresi chroma yang diterapkan peramban pada layar sRGB-saja. Jangan pra-snap ke sRGB kecuali Anda tahu seluruh audiens Anda berada pada layar warisan.
- Pilih Shade Seragam Perseptual melalui Tones OKLCH
- Saat menghasilkan ramp 50/100/200/.../900 untuk warna brand, gunakan panel Tones: ia menstep L dalam kenaikan yang sama sambil menahan C dan H tetap. Hasilnya adalah ramp yang merata secara perseptual di mana selisih visual antara 400 dan 500 tampak identik dengan selisih antara 500 dan 600. Penyetelan-tangan ramp HSL untuk perataan yang sama adalah latihan multi-jam per warna; OKLCH memberikannya secara gratis.
- Gunakan Eyedropper dengan Hemat untuk Pencocokan Warna Lintas-Tab
- EyeDropper API (hanya-Chromium pada 2026) memungkinkan Anda mengklik di mana saja di layar — termasuk di luar peramban — untuk mengambil sampel warna piksel itu. Berguna untuk mencocokkan warna dari screenshot, bingkai video, atau UI aplikasi lain. Perlakukan hasil sebagai titik awal, bukan nilai akhir — render layar menerapkan manajemen warna yang mungkin berbeda dari file sumber. Untuk warna brand kanonik, selalu dapatkan hex dari sumber desain (Figma, Sketch, PDF panduan brand) alih-alih eyedroppering screenshot.
- Bookmark URL dengan `#hex=...` untuk Keputusan Palet yang Dapat Dibagikan
- Warna saat ini dikodekan ke hash URL sebagai `#hex=...` atau `#oklch=...` secara otomatis. Salin URL, tempel ke thread Slack atau isu GitHub, dan siapa pun yang membukanya mendarat pada warna yang persis sama. Berguna untuk thread tinjauan desain di mana "biru brand" perlu berarti satu triple OKLCH tertentu. Hash diperbarui pada setiap perubahan, sehingga URL di address bar Anda selalu adalah warna saat ini yang langsung — bookmark untuk kembali ke palet tertentu nanti.
Pertanyaan yang Sering Diajukan
Bagaimana cara mengonversi kode hex ke RGB?
Apakah hex sama dengan RGB?
Bagaimana cara membaca kode warna hex?
Apa rumus hex ke RGB?
Mengapa menggunakan hex alih-alih RGB?
Bisakah kode hex memiliki alpha / transparansi?
Berapa banyak warna yang dapat direpresentasikan hex?
Apa itu warna OKLCH?
Apakah OKLCH lebih baik daripada HSL?
Peramban apa yang mendukung oklch()?
Mengapa menggunakan OKLCH di Tailwind v4?
Apakah OKLCH seragam secara perseptual?
Bagaimana cara membaca nilai OKLCH?
Apa perbedaan antara gamut dan ruang warna?
Mengapa warna OKLCH saya di luar gamut sRGB?
Haruskah saya menggunakan WCAG 2 atau APCA untuk kontras?
Apa perbedaan antara HSV dan HWB?
Alat Terkait
Lihat semua alat →Konverter Basis Bilangan — Biner, Hex, Desimal & Oktal
Alat Konversi
Konversi antara biner, hex, desimal, oktal, dan basis apa pun (2-36) secara instan. Presisi BigInt, output siap kode. Gratis, privat — tanpa pendaftaran.
Konverter HEX ke CMYK
Alat Konversi
Konversi warna HEX ke CMYK di peramban Anda. Aproksimasi naif berbasis sRGB untuk pratinjau cetak. Gratis, tanpa daftar, warna Anda tetap lokal.
Konverter HEX ke HSL
Alat Konversi
Konversi warna hex apa pun ke HSL di peramban Anda — 3 digit, 6 digit, dan 8 digit dengan alpha semuanya didukung. Gratis, instan, tanpa daftar, warna Anda tidak pernah meninggalkan halaman.
Konverter HEX ke OKLCH
Alat Konversi
Konversi HEX ke OKLCH untuk token desain Tailwind v4. Output seragam-perseptual langsung dengan peringatan gamut Display P3. Gratis, hanya di peramban.
Konverter HEX ke RGB
Alat Konversi
Konversi kode warna HEX apa pun ke RGB di peramban Anda — HEX 3 digit, 6 digit, dan 8 digit dengan alpha semuanya didukung. Gratis, instan, tanpa daftar, warna Anda tidak pernah meninggalkan halaman.
Kompres Gambar Online — JPEG, PNG & WebP
Alat Konversi
Kompres JPEG, PNG & WebP hingga 80% lebih kecil di browser, tanpa upload. Batch 20 gambar, atur kualitas, bandingkan sebelum & sesudah. Gratis & privat.