黒
純粋な黒。3 チャネルすべてがゼロ — 発光がない状態です。Hex コード (#000000)。
rgb(0 0 0) → #000000 画面上の純粋な黒はデザイン選択として正しいことは稀です — 柔らかい本文テキストには `#111` か OKLCH の知覚的明度 0.1〜0.15 を試してください。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
任意の RGB カラーを HEX にブラウザで変換できます。整数・パーセント・rgba アルファすべてに対応。無料・即時・登録不要、色データはページから一切送信されません。
ティント
シェード
トーン
ハーモニー
— — — — — RGB から HEX へのコンバーターは、0〜255 の整数チャネル値 3 つ(`rgb(255 87 51)`)を、同じ色を符号化する 6 文字の hex コード(`#FF5733`)に変換する小さなユーティリティです。RGB と HEX は、1990 年代後半以降、すべての Web スタイルシート、デザインツール、画像ピクセルパイプラインが基盤に据えてきた 2 つの形式であり、両者間の変換はカラーツールの中で最もよく行われる単一操作です — 逆方向と組み合わせて、この厳密な変換は Web 上のあらゆる Figma プラグイン、CSS プリプロセッサ、デザイントークンビルド、カラーピッカー UI 全体で 1 日に何百万回も走ります。RGB はハードウェア API、canvas 描画呼び出し、画像バッファ操作、OpenGL カラー属性、ほとんどのグラフィックス SDK がネイティブで報告するチャネルアドレス形式 — 0〜255 の整数 3 つが LCD の赤・緑・青のサブピクセル、あるいは CRT の蛍光体に直接マッピングされます。HEX は Figma、Sketch、Photoshop、そしてあらゆるブランドガイドライン PDF が出力で期待する簡潔なコピペ形式 — CSS カスタムプロパティに収まりやすく、目がパターンを覚えれば一目で読める 6 文字の基数 16 文字列です。両者の変換は機械的です: 各整数を 2 桁の基数 16 ペアに変換し、先頭に `#` を付けて連結します。本ツールはこの変換を入力中にライブで実行します。クリックする「Convert」ボタンはなく、他のあらゆる一般的なカラー形式(HSL、OKLCH、OKLAB、HSV、HWB、CMYK、加えて 148 個の CSS 名前付きカラー)を HEX 出力と並べて無料で表示します。
**hex 形式そのものも、もう少し詳しく見る価値があります。** 標準の CSS hex には 4 つの合法な形があります。正規の 6 桁形 `#RRGGBB` は 3 つの 8 bit チャネルを 6 つの基数 16 桁にパックします — 合計 16,777,216 色(256³)。3 桁省略形 `#RGB` は各桁を複製して 6 桁同等を作る圧縮形式です: `#F73` は `#FF7733` に展開され、*`#000F73` ではありません*(CSS カラー構文で最も誤解されるルールの 1 つ)。アルファ付き 8 桁形 `#RRGGBBAA` は 0〜`FF` スケールの 2 桁アルファペアを追加し、`00` が完全に透明、`FF` が完全に不透明です。4 桁アルファ省略形 `#RGBA` は 3 桁省略形を映し、アルファ桁を含む各桁を複製します。hex は大文字小文字を区別しません — `#ff5733` と `#FF5733` は同一にパースされますが、ほとんどのブランドガイドラインは大文字小文字の慣例を選んで一貫させます。基数 16 の選択は便利です: 1 hex 桁 = ニブル = 4 bit、2 桁 = バイト = 0〜255 なので、1 つの 2 桁ペアがパディングの無駄なく 1 つの 8 bit チャネルにきれいにマップされます。
変換の数学は両方向ともクリーンに動きます。**RGB → HEX**: 各チャネルについて `value.toString(16).padStart(2, '0')` を呼んで 2 桁の hex ペアを得(`padStart` が肝心 — これがないとチャネル値 5 が `'05'` ではなく `'5'` にシリアライズされ、不正な hex を生む)、それを連結します。アルファ付き RGB(`rgb(R G B / A)` または `rgba(R, G, B, A)`)の場合、0〜1 のアルファ浮動小数点に 255 を掛け、最も近い整数に丸め、4 番目のペアとして hex 符号化し、8 桁形式を出力します。**HEX → RGB** は逆の手順です: 6 桁 hex `#RRGGBB` を `parseInt(hex.slice(1, 3), 16)` などで 3 つの 2 桁基数 16 数としてパースします。両方向ともビット完全です: 16² = 256 が、各チャネルが占める 0〜255 のバイト範囲とちょうど一致するので、RGB → HEX → RGB のラウンドトリップは浮動小数点ドリフトなしで元の整数を一字一句、再現します。
**なぜ CSS で RGB ではなく HEX か?** 3 つの理由があります。HEX は短く — `#FF5733` は 7 文字、対して `rgb(255, 87, 51)` は 16 文字で、CSS カスタムプロパティや Tailwind の設定オブジェクトにパックされたときには有意な差です。HEX は空白に関するバグがありません — CSS minifier、JSON シリアライザ、コマンドラインツールのいずれも、丸括弧の対応やカンマのエスケープを心配せず 7 文字の文字列をクリーンに扱えます。そして HEX はデザインツールエコシステム全体がネイティブで話す形式です — Figma のカラーパネル、Sketch のスウォッチ、Photoshop のカラーピッカー、あらゆるブランドガイドライン PDF、あらゆる Dribbble ショットのカラーコールアウト — すべてデフォルトで hex をエクスポートします。デザイナーから開発者へのコピペ経路は hex 型なので、RGB から HEX への変換は頻繁です: 開発者はデザインツール以外(canvas 呼び出し、スクリーンショットのスポイト、ハードウェアセンサー)から RGB を受け取り、スタックの残りが期待する hex 形式に変換する必要があります。
このツールの RGB → HEX ワークフローは、同じ統合カラーコンバーターを共有する 5 スポークファミリーの一方向です。専用の 統合カラーコンバーター がハブで、9 つの形式を同時に編集可能で表示します。RGB と HEX 以上のものをワークフローが必要とするときに正しいツールです。単方向のスポークは具体的な Google 検索意図を狙います: 逆方向には HEX から RGB へのコンバーター(Figma から hex を取り、0〜255 の整数を取り出す)、レガシーなデザイナー認知空間には HEX から HSL へのコンバーター、モダンな知覚的均一デザインシステムには HEX から OKLCH へのコンバーター(Tailwind v4 と shadcn は現在どちらもデフォルトで OKLCH)、印刷準備の近似には HEX から CMYK へのコンバーター。5 つのスポークとハブはすべて同じパースエンジンと同じ変換数学を共有しているため、ファミリー全体で結果は同一であることが保証されます。すべての変換は ブラウザでローカルに動作します — RGB 値がアップロードされたりログに記録されたりすることはなく、入力中のネットワークリクエストはゼロです。DevTools で確認してください。
// Serialize {r, g, b, alpha} → canonical hex string
// Emits 6-digit #RRGGBB when alpha === 1, 8-digit #RRGGBBAA otherwise.
function formatHex({ r, g, b, alpha = 1 }) {
const pair = (v) => Math.round(v).toString(16).padStart(2, '0').toUpperCase();
const rgb = pair(r) + pair(g) + pair(b);
if (alpha >= 1) return `#${rgb}`;
const a = pair(alpha * 255);
return `#${rgb}${a}`;
}
console.log(formatHex({ r: 255, g: 87, b: 51 })); // '#FF5733'
console.log(formatHex({ r: 59, g: 130, b: 246 })); // '#3B82F6'
console.log(formatHex({ r: 255, g: 87, b: 51, alpha: 0.5 })); // '#FF573380'
console.log(formatHex({ r: 5, g: 0, b: 0 })); // '#050000' — padStart matters モダンなスペース区切り `rgb(255 87 51)`、レガシーなカンマ区切り `rgb(255, 87, 51)`、パーセントチャネル `rgb(100% 34% 20%)`、スラッシュ経由のモダンなアルファ `rgb(255 87 51 / 0.5)`、レガシーな `rgba(255, 87, 51, 0.5)` がすべて同一にパースされます。パーサーは hex シリアライズの前にすべての入力形状を同じ内部 RGB タプルに正規化するので、ソースが生成する形式 — Photoshop の整数 3 つ組、スタイルシートの `rgba()`、Canvas API のタプル — を手で再フォーマットせずそのまま貼り付けられます。
HEX フィールドは不透明な色には `#FF5733`、アルファ付きには `#FF573380`(8 桁形式)として値を提示します。ほとんどのブランドガイドラインとの一貫性のためデフォルトで大文字。スタイルガイドが必要とするなら 1 置換で小文字に切り替えられます。両形式とも有効な CSS で、すべてのエバーグリーンブラウザに搭載されています。アルファ付き 8 桁形式は 2018 年にすべての主要ブラウザで出荷されました。IE 11 フォールバックには、レガシーな `rgba()` 形式が RGB フィールドにそのまま並んでいます。
RGB → HEX は整数対文字列の数学です: `value.toString(16).padStart(2, '0')` は浮動小数点を一切介さず正規の 2 桁 hex ペアを生みます。逆方向(`parseInt(pair, 16)`)も同様に正確です。RGB → HEX → RGB → HEX のラウンドトリップは無期限に元の入力をそのまま再現します。内部の OKLCH を真実の源とすることで、より長い鎖 RGB → HSL → OKLAB → HEX もビット安定に保たれます — HSL 経由でルーティングするレガシーコンバーターでは保証できません。
アルファ付き RGB(`rgb(255 87 51 / 0.5)` または `rgba(255, 87, 51, 0.5)`)は 8 桁 hex 形式(`#FF573380`)を自動的に出力します。アルファ浮動小数点は hex 符号化の前に 255 を掛けて最も近い整数に丸められます: `0.5 × 255 = 128 = 0x80`。アルファが 1 のときは、スタイルシートに末尾の `FF` ペアを漏らさないよう 6 桁 hex に戻ります。`rgba()` のアルファ値をモダンな 8 桁 hex 形式にラウンドトリップさせる必要があるデザイントークン移行で有用です。
貼り付けた同じ RGB が HSL、HSV、HWB、OKLCH、OKLAB、CMYK、そして最も近い CSS 名前付きカラーも駆動し — すべて同じページに一目で並びます。RGB → hex だけに縛られることはありません。チームメイトが Tailwind v4 トークン用の OKLCH の 3 つ組、ドキュメント本文用の最も近い名前付きカラー、印刷見積もり用の CMYK 近似を必要としても、各値は専用の Copy ボタン付きですでにそこにあります。
RGB タプルを通すとコントラスト行が即座に白と黒の両方に対して、WCAG 2.1(規制下限: 本文テキストで 4.5:1、AAA で 7:1)と APCA Lc(提案中の WCAG 3 後継: 本文テキスト目標は `|Lc| ≥ 75`)の両方でスコアリングします。RGB タプルを hex に変換したばかりで、結果のブランドカラーが本文テキストとして実際に読みやすいかを出荷前に検証したいときに便利です。
ピッカーの下の Copy as code セクションは、現在の色を 5 つのプラットフォーム向けの貼り付け可能なスニペットに変換します: CSS カスタムプロパティ(`--color-brand: #FF5733`)、Tailwind v4 `@theme` トークン、SwiftUI `Color(red:green:blue:)` リテラル、Jetpack Compose `Color(0xFFFF5733)` 定数、Flutter `Color(0xFFFF5733)`。各プラットフォームが期待する厳密な構文で、iOS のアセットカタログ、Android のテーマファイル、Flutter の `ThemeData` に投入できる状態で提供されます。
すべての RGB パース、hex シリアライズ、コントラストスコアリング、パレット生成はブラウザでローカルに実行されます。RGB 値は送信されず、サーバーに記録されず、解析もされません。入力中のネットワークリクエストはゼロ — DevTools で確認してください。未発表のブランドパレット、社内デザイントークン、NDA 下のドラフトモックアップ、その他あらゆる機密のカラー作業に安全です。
現在の色は変更のたびに `#hex=ff5733` として URL ハッシュに自動符号化されます。URL をコピーして Slack スレッドや GitHub Issue に貼り付ければ、開いた人は誰でも同じ RGB タプルで同じ hex 結果に着地します。ハッシュはアドレスバー内にしか存在せず、サーバーには送信されません(ブラウザは HTTP リクエストに URL フラグメントを含めません)。リンクを共有してもサードパーティに色が漏れることはありません。
「rgb to hex」の Google デフォルト結果 — 3 つの RGB 数値ボックスを入力、hex 出力の単方向フォームで、他の形式は見えません。検索からの単発参照には有用です。OKLCH、コントラスト検査、色域検出、アルファ処理、複数形式同時表示が欠けています。本ツールは骨格的な単一変換ケース以外のすべての軸で勝ります。
クエリした任意の RGB に対して長年にわたる色ごとの SEO ページ: 変換、パレット、ハーモニー、グラデーションを深いメタデータで提供します。UI は古め(2010 年代前半)、OKLCH サポートなし、APCA コントラストなし、広色域処理なし。Google 経由で特定の色を SEO 的に発見するには強いですが、ユニファイドフィールド UX への入力が速いアクティブな変換ワークフローには弱いです。
教育に焦点を当てたページ上の初心者向け HEX/RGB/HSL トグルで、検索結果に偏在します。OKLCH なし、rgba を超えるアルファ処理なし、高度な機能なし。W3Schools の解説コンテンツと並べて参照に有用です。本ツールは他のすべての軸で勝ちます: より多くの形式、知覚数学、色域 + コントラスト + CVD 機能、Tailwind v4 / SwiftUI / Compose / Flutter のモダンなコードエクスポート。
Chrome、Firefox、Safari の DevTools にはすべて、CSS ペインのカラースウォッチをクリックすると RGB を hex にインライン変換するカラーピッカーが付属します。無料、インストール不要、常に利用可能。OKLCH なし、共有可能 URL なし、Web 以外のプラットフォーム(SwiftUI、Compose)向けのコードエクスポートなし。CSS をデバッグしているときは DevTools に手を伸ばし、クロスプラットフォーム出力が必要なときは本ツールに手を伸ばしてください。
OS X 以来すべての Mac にバンドル — 任意のピクセルにホバーすると RGB / hex / 線形値を読みます。画面上の任意のアプリからピクセルカラーをサンプリングするのに優れています。貼り付けた RGB 3 つ組の変換はしません。これはコンバーターではなくスクリーンサンプラーです。ブラウザ内で同じスクリーンサンプリング機能を得るには、本ツールのピッカーの EyeDropper ボタン(Chromium 系ブラウザのみ)を使ってください。
多くの空間(HEX、RGB、HSL、HSV、CMYK、XYZ、CIELAB)をカバーする色ごとの SEO ページ。モダンな OKLCH サポートと統合フィールド編集 UX が欠けています。自動生成のコンテンツページはコンテンツファーム感がありますが、変換データ自体は正しいです。Google 経由で個々の色のメタデータを掘るには良いですが、アクティブなワークフローでは本ツールの方が速いです。
rgb(255 87 51)
HEX の出力: `#FF5733`。古典的なクロスプラットフォームワークフロー — CSS スタイルシートがモダンな `rgb()` 構文でブランドカラーを宣言し、iOS チームが SwiftUI の `Color(hex:)` 拡張やアセットカタログに投入する hex を必要としている、という状況です。各チャネルは独立に変換されます: `255 → FF`、`87 → 57`、`51 → 33` を連結して先頭に `#` を付けます。同じ hex は Android Compose、Flutter、Figma にもそのまま貼り付け可能 — 2026 年でも hex はクロスプラットフォームのカラー受け渡しにおける共通語であり続けています。
rgb(59 130 246)
HEX の出力: `#3B82F6`。Adobe の Color ピッカー(Photoshop、Illustrator、InDesign)は RGB を 0〜255 の整数 3 つで報告します。フロントエンドチームは `--color-brand: #3B82F6` のような CSS カスタムプロパティに投入する hex を必要としています。この特定の 3 つ組は Tailwind の `blue-500` です — `59 = 0x3B`、`130 = 0x82`、`246 = 0xF6`。ここに一度貼り付ければ、対応する hex に加え Tailwind v4 のトークン移行向けの OKLCH の 3 つ組も 1 ステップで得られます。
rgb(255 87 51 / 0.5)
HEX の出力: `#FF573380`。アルファ浮動小数点に 255 を掛けて(`0.5 × 255 = 127.5` を 128 に丸めて)、2 桁の hex ペアに変換し(`128 = 0x80`)、RGB の hex の後ろに追加します。アルファ付き CSS 8 桁 hex は 2018 年にすべてのエバーグリーンブラウザでネイティブ出荷されました(Chrome 62、Firefox 49、Safari 9.1、Edge 79)。2018 年以前のブラウザサポート向けには、レガシーな `rgba(255, 87, 51, 0.5)` 形式が今でも利用可能で、変換は機械的かつ同じ色を完全に保持します。
rgb(100% 50% 0%)
HEX の出力: `#FF8000`。CSS Color 4 はパーセントチャネルを許可します — 各パーセントは `値 × 255 / 100` で 0〜255 範囲にマップされ、最も近い整数に丸められます(`50% × 255 = 127.5 → 128 = 0x80`)。パーセント形式と整数形式は互換で、同一の hex 出力を生みます。手書きのスタイルシートではチャネル比が生の整数値より重要なとき、可読性のためパーセント構文が好まれることがあります。hex 出力は両入力を同じ正規の 6 桁文字列に正規化します。
最もよく変換される 10 個の RGB タプルとその hex 等価のリファレンス表 — 純粋なプライマリ、純粋なセカンダリ、Tailwind パレットから 2 つの実世界ブランドカラー。
純粋な黒。3 チャネルすべてがゼロ — 発光がない状態です。Hex コード (#000000)。
rgb(0 0 0) → #000000 画面上の純粋な黒はデザイン選択として正しいことは稀です — 柔らかい本文テキストには `#111` か OKLCH の知覚的明度 0.1〜0.15 を試してください。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
純粋な白。3 チャネルすべてが最大値(255)。sRGB で最も明るい色です。
rgb(255 255 255) → #FFFFFF 純粋な白の背景は暗い環境では眼精疲労を生むことがあります — 温かみのある代替には `#fafafa` か OKLCH 0.98 を検討してください。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
純粋な赤。R チャネルが最大、G と B がゼロ。3 つの sRGB プライマリの 1 つ目です。
rgb(255 0 0) → #FF0000 純粋な赤は非常に飽和していてブランドパレットに収まることは稀です — ほとんどの「赤」のブランドカラーは `#DC2626` や `#E53935` に近い位置にあります。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
純粋な緑。G チャネルが最大、R と B がゼロ。CSS 名前付きカラーは `lime`(`green` は #008000)。
rgb(0 255 0) → #00FF00 CSS キーワード `green` は #008000(半輝度)に解決され、#00FF00 ではありません — よくある混乱の原因です。純粋な RGB の緑には `lime` を使ってください。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
純粋な青。B チャネルが最大、R と G がゼロ。3 つ目の sRGB プライマリです。
rgb(0 0 255) → #0000FF 白背景の純粋な青は WCAG AA コントラスト(3.7:1)を失敗します — 本文テキストには `#1D4ED8`(Tailwind の blue-700)のようなより暗いブランドの青を検討してください。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
シアン — 緑と青が最大、赤がゼロ。3 つの sRGB セカンダリの 1 つ。CSS 名前付きカラーは `cyan`(同等に `aqua`)。
rgb(0 255 255) → #00FFFF CSS の `cyan` と `aqua` は厳密な同義語です — どちらも #00FFFF に解決されます。1 つを選んでスタイルシート全体で一貫してください。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
マゼンタ — 赤と青が最大、緑がゼロ。CSS 名前付きカラーは `magenta`(同等に `fuchsia`)。
rgb(255 0 255) → #FF00FF CSS の `magenta` と `fuchsia` は厳密な同義語です — どちらも #FF00FF に解決されます。テストパターンや開発ツールのオーバーレイで一般的です。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
黄 — 赤と緑が最大、青がゼロ。知覚的な輝度で 3 つの sRGB セカンダリで最も明るい色です。
rgb(255 255 0) → #FFFF00 黄は画面上で白以外で最も高輝度の色です — 紙の上の hex は問題なく見えますが、白背景上の黄色いテキストはほぼ見えなくなります。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
Tailwind CSS デフォルトの blue-500 ブランドカラー — 2020 年代中盤の正典的な「Web ブルー」。無数のダッシュボード、マーケティングサイト、管理ツールで使われています。
rgb(59 130 246) → #3B82F6 Tailwind v4 は知覚的に均一なランプのために blue-500 を OKLCH(`oklch(0.629 0.193 263.4)`)で再定義しています — フォールバックとして hex は同じです。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
Tailwind CSS デフォルトの rose-500 — アクセントボタン、警告状態、ブランドコントラストでよく使われる高彩度のピンクレッド。
rgb(244 63 94) → #F43F5E rose-500 は白に対して大きいテキストでは WCAG AA(4.6:1)を通りますが本文テキストでは失敗します — 白背景の本文には rose-600(#e11d48)かそれ以上に暗い色と組み合わせてください。
代わりに OKLCH が必要ですか? 知覚的に均一な出力には専用の HEX から OKLCH へのコンバーターを試してください。
RGB 入力に任意の `rgb()` 値を投入します — モダンなスペース区切り `rgb(255 87 51)`、レガシーなカンマ `rgb(255, 87, 51)`、スラッシュ経由のアルファ `rgb(255 87 51 / 0.5)` または `rgba(255, 87, 51, 0.5)` 形式、あるいはパーセントチャネル `rgb(100% 34% 20%)` のいずれでも構いません。本ツールは hex を計算する前にすべての入力形状を同じ内部 RGB タプルに正規化します。不正な文字、範囲外の整数、構文の崩れは静かなインラインエラーになり、有効な RGB は他のすべての形式フィールドをリアルタイムで更新します。
RGB フィールドの上の HEX フィールドは、対応する hex 値を表示します: 不透明な色には `#FF5733`、アルファ付きには `#FF573380`(8 桁形式)。出力はほとんどのブランドガイドラインとの一貫性のためデフォルトで大文字 hex を使います。小文字(`#ff5733`)は機械的な 1 置換で得られ、CSS として等しく有効です。変換はビット完全 — RGB → HEX → RGB のラウンドトリップは元の 3 つ組を一字一句、浮動小数点ドリフトなしで再現します。
各形式カードの右側に Copy ボタンがあります。1 クリックで値がクリップボードに乗り、ボタンラベルが一瞬「Copied!」に切り替わるのでわかります。コピーされる文字列は先頭の `#` を含むので、CSS ルール、Figma のカラーフィールド、SwiftUI の hex 拡張、Android の `colors.xml` にそのまま貼り付けられます。プラットフォーム固有の構文(SwiftUI の `Color(red:green:blue:)`、Compose の `Color(0xFF...)`、Tailwind v4 の `@theme` トークン)には、ピッカー下の Copy as code セクションを使ってください。
貼り付けた同じ RGB が他の形式フィールドにも反映されます — レガシー CSS 向けの HSL、知覚的に均一なデザインシステム向けの OKLCH と OKLAB、デザイナーのカラーピッカーワークフロー向けの HSV と HWB、印刷見積もり向けの CMYK、ドキュメントや本文向けの最も近い CSS 名前付きカラー。RGB → hex だけに縛られることはありません。Tailwind v4 の `@theme` ブロックに投入する OKLCH の 3 つ組も必要なら、OKLCH フィールドに専用の Copy ボタン付きで並んでいます。
形式グリッドの下には、ビジュアル探索のための SL の四角 + 色相スライダー + アルファスライダーがあります。任意のコントロールをドラッグすればすべてのテキストフィールドがリアルタイムで更新され、出発点だった RGB と HEX も含まれます。Chromium 系ブラウザ(Chrome、Edge、Brave)では EyeDropper ボタンがネイティブの `EyeDropper` API を起動し、ブラウザウィンドウの外を含む画面上の任意のピクセルをサンプリングできます — 別アプリの UI から先にスクリーンショットを撮らずに RGB タプルを取得し、即座に hex を読みたいときに便利です。
RGB を hex に変換するには、各チャネルの `toString(16)` を 2 桁に左パディングする必要があります。`padStart(2, '0')` がないと、1 桁のチャネル値は不正な hex を生みます: `rgb(5, 87, 51)` は `#055733`(6 文字)ではなく `#55733`(5 文字)としてシリアライズされてしまいます。多くの場当たり的なコンバーターはパディングをスキップして 16 未満のチャネルで壊れた出力を生みます。標準イディオムは R、G、B それぞれに対して `value.toString(16).padStart(2, '0')` を呼び、その後連結して先頭に `#` を付けることです。
padStart をスキップ:
[5, 87, 51].map(v => v.toString(16)).join('') → '55733'
5 文字の不正な hex を生む。 padStart(2, '0') を使う:
[5, 87, 51].map(v => v.toString(16).padStart(2, '0')).join('') → '055733'
6 文字の有効な hex; 0〜255 のすべてのチャネル値で正しく動作します。 RGB タプルが正規化された 0〜1 の浮動小数点に 255 を掛けた結果(OpenGL、SwiftUI、正規化された画像データで一般的)から来るとき、結果はしばしば `127.5` や `204.7` のような浮動小数点になります。浮動小数点に `toString(16)` を呼ぶと、`'7f.8'` や `'cc.b333...'` のような小数点付き hex が生まれ、これは有効な CSS hex ではありません。`toString(16)` ステップの前に常に `Math.round`(あるいは丸めポリシーに応じて `Math.floor`/`Math.ceil`)で整数に丸めてください。
丸めをスキップ: (0.5 * 255).toString(16) → '7f.8' 小数点付きの不正な hex を生む。
まず整数に丸める: Math.round(0.5 * 255).toString(16).padStart(2, '0') → '80' 有効な 2 桁 hex ペア; CSS Color 4 の正規化と一致します。
CSS 8 桁 hex は `#RRGGBBAA` — アルファは*末尾*ペアです。一部のカラーライブラリ(特に古い Android `Color.parseColor()`)は反対の順序 `#AARRGGBB` を使い、アルファを*先頭*ペアとします。これは CSS hex と非互換です。50% アルファ付きの RGB 値を CSS hex にシリアライズすると `#FF573380` が出力されますが、Android の先頭アルファ形式に出力すると `#80FF5733` になります。8 桁 hex を生成する前に、ターゲットプラットフォームのアルファ順序を必ず検証してください。
Android の先頭アルファ hex を CSS に出力: rgb(255 87 51 / 0.5) → #80FF5733(Android 形式) CSS は alpha=128、R=255、G=87、B=51 とパース — まったく違う色になる。
ターゲットプラットフォームの文書化された形式を使う: CSS には: #FF573380(アルファを最後のバイトに) Android Compose には: Color(0x80FF5733)(アルファを最初のバイトに) 再順序化せずに 2 つの間でクロス貼り付けしないこと。
RGB チャネルはガンマ符号化されており、線形ではありません。2 つの RGB 値を平均すると知覚的に誤った中点が得られます。`(255, 0, 0)` を `(0, 255, 0)` と平均すると `(127, 127, 0)` という濁った暗いオリーブが生まれ、赤と緑の光を混ぜたら期待する明るい黄色の中点にはなりません。正しいブレンディングには、まず sRGB 伝達関数(CSS Color 4 §11.2)で線形 RGB に復号し、線形空間で平均し、それから再符号化します。あるいは知覚距離が均一な OKLAB / OKLCH で作業します。
ガンマ符号化された RGB を直接平均: (rgb(255,0,0) + rgb(0,255,0)) / 2 = rgb(128, 128, 0) 明るい黄色ではなく暗いオリーブに見える。
線形 RGB で平均: 復号 → 線形 RGB → 平均 → 再符号化 → rgb(188, 188, 0) 物理的な光の混合が生む明るい黄色に視覚的に一致します。
単位変換
無料オンライン進数変換ツール。2進数、8進数、10進数、16進数および任意の基数(2-36)間で数値を瞬時に変換。BigInt対応で桁数制限なし。登録不要・サーバー送信なし、すべての処理がブラウザ内で完結。コピーボタンやコードリテラル出力で開発作業を効率化。
単位変換
HEX を RGB、HSL、OKLCH、OKLAB、CMYK にブラウザで変換できます。任意の形式をワンクリックでコピー。無料・登録不要・色データはページから一切送信されません。
単位変換
HEX カラーを CMYK にブラウザで変換できます。印刷プレビュー向けの sRGB ベースの単純な近似値です。無料・登録不要、色データはローカルから出ません。
単位変換
任意の HEX カラーを HSL にブラウザで変換できます。3 桁・6 桁・アルファ付き 8 桁の HEX すべてに対応。無料・即時・登録不要、色データはページから一切送信されません。
単位変換
HEX を OKLCH に変換し、Tailwind v4 デザイントークンに対応します。知覚的に均一なライブ出力に加え、Display P3 色域の警告も表示。無料・ブラウザ完結。
単位変換
任意の HEX カラーコードを RGB にブラウザで変換できます。3 桁・6 桁・アルファ付き 8 桁の HEX すべてに対応。無料・即時・登録不要、色データはページから一切送信されません。