ForHosting KIT · 開発者向けツール

RGBからHSLへ変換

RGBカラーを同等のHSL値へ変換し、デザインツール、スタイルシート、アプリケーションコードで扱いやすい、簡潔で予測可能な結果を取得できます。赤・緑・青の各チャンネルを0から255の範囲で入力してください。色相は0–360度、彩度と明度は0から100までのパーセント値で返されます。欠落した値、数値でない値、無限大、範囲外の値は自動補正せずエラーにするため、入力ミスを見逃さず、後続のカラーデータの信頼性を保てます。

● Beta無料・ブラウザ内で実行
ご利用方法 ウェブAPIメールTelegramアプリ 近日

RGBチャンネルを正しく入力する方法

赤・緑・青に対応する3つの数値フィールドを、短いフィールド名r、g、bで指定してください。各チャンネルは両端を含む0から255の範囲にする必要があります。0はそのチャンネルの強度がない状態、255は最大強度を意味します。別の計算から補間色が生成される場合に便利なため、範囲内の小数も入力できます。この変換では、無効な値を意図的に範囲内へ丸めません。負数、255を超える値、欠落値、数値でない値、無限大を指定すると、入力エラーを返します。厳密に検証することで、無効な元データが、もっともらしい誤った色へ気付かないまま変換されることを防ぎ、自動処理を安全にできます。最初の確認にはrを255、gを0、bを0にしてください。結果は色相0度、彩度100パーセント、明度50パーセントの赤になります。CSSから値をコピーする際は、rgb()の囲み、コンマ、パーセント記号を除き、チャンネルの数値だけを送信してください。入力を数値に限定することで、0–255のRGBスケールと、一部のデザインシステムが使用するパーセント表記との混同も避けられます。

HSL値が計算される仕組み

変換では、まず各RGBチャンネルを255で割って正規化します。次に、正規化した値の最大値と最小値を求めます。その平均が明度になり、差であるクロマによって、彩度と意味のある色相が存在するかを判断します。クロマが0の場合は無彩色です。彩度は0となり、色相環のどの位置も視覚的に区別できないため、慣例として色相も0を返します。有彩色では、現在の明度に応じてクロマを調整した値が彩度になります。色相は、どのRGBチャンネルが最大かによって決まります。赤・緑・青は色相環の異なる区画を占め、チャンネル間の相対的な差によって区画内の位置を決定します。色相は0以上360未満の度数で返されます。彩度と明度は100倍し、パーセント値として返します。結果は小数第4位までに丸めるため、実用的な精度を保ちながら、安定して読みやすい応答になります。これは標準的なRGBからHSLへの変換です。同じ色情報を並べ替える処理であり、カラーマネジメント、ガンマ補正、プロファイル変換は行いません。

デザインとアプリケーションでの活用方法

色のバリエーションを検討する場合、HSLはRGBより直感的に扱えることがあります。色相は色の系統、彩度は鮮やかさや灰色への近さ、明度は黒または白への近さを表します。ブランドカラーを変換した後、色相を維持したまま明度を調整すれば、ホバー、押下、無効などの状態色を作成できます。データ処理では、異なる形式のカラーレコードを共通のHSL表現へ統一してから、並べ替えやグループ化を行えます。品質検査では、返された値をデザイントークンと比較し、不正なRGBチャンネルを早期に拒否することも可能です。ただし、同じ数値幅の変更が同じ見た目の変化になるとは限りません。HSLは操作には便利ですが、知覚的に均等な色空間ではありません。正確な往復変換が必要な場合は、丸めによって再変換時にわずかな差が生じる可能性があるため、元のRGB値も保存してください。この処理は入力された数値だけで決まる決定論的な計算です。ネットワーク、乱数、時刻、外部カラーデータベースを使用しないため、同じ入力からは繰り返し同じ出力が得られ、テスト、ビルドスクリプト、API連携、再現可能なデザインシステム用ツールに適しています。

カラー操作画面の作成

保存済みのRGB値を変換し、エディターに色相・彩度・明度のスライダーを表示できます。

画面状態ごとの色を生成

基本色のHSL値を取得し、操作状態に合わせて明度や彩度を調整できます。

カラーデータの統一

RGBフィールドを一貫したHSL構造へ変換し、アプリデータ、テスト、レポートに利用できます。

入力できるRGB値を教えてください?

r、g、bはそれぞれ、両端を含む0から255までの有限な数値で指定してください。

結果はどの範囲で返されますか?

色相は0から360までの度数、彩度と明度は0から100までのパーセント値で返されます。

灰色の色相はどの値になりますか?

灰色には視覚的に意味のある色相がないため、慣例として色相0度、彩度0パーセントを返します。

範囲外のチャンネルは補正されますか?

いいえ。0未満または255を超える値は入力エラーとなり、元データの問題を明確に示します。

APIによる変換の料金はいくらですか?

APIリクエスト1回の料金は$0.002です。ブラウザーでは同じ決定論的変換をローカルで実行できます。

このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。

POSThttps://api.kit.forhosting.com/color/rgb-to-hsl

Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。

curl -X POST https://api.kit.forhosting.com/color/rgb-to-hsl \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"r":255,"g":128,"b":64}'
{
  "r": 255,
  "g": 128,
  "b": 64
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "color.rgb_to_hsl",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。

1リクエストあたり$0.002

単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。

HTTPコード意味
401unauthorizedAPIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。
402insufficient_balance残高が不足しています。チャージ後に再度お試しください。
404unknown_type指定されたタスクタイプは存在しません。タイプ名を確認してください。
429rate_limitedリクエストが多すぎます。しばらく待ってから再度お試しください。

KITの完全なドキュメントを見る →