色覚シミュレーター:1型・2型・3型色覚の見え方を確認
1つの色が1型・2型・3型の色覚でどう見えうるかを確認できます。#3A86FFは2型(緑の感度がない色覚)では#5751DBになります。状態を示す色やグラフの系列が区別しにくくならないか、公開前に確かめられます。ブラウザで無料で使えます。
- 無料
- ブラウザで動作
- 登録不要
- データは端末の外に出ません
無料で実行
計算例
- 色
- #3A86FF
- 種類
- Deuteranopia
- シミュレーション色
- #5751DB
この色覚シミュレーターは、16進数で指定されたsRGB色に、1型色覚、2型色覚、または3型色覚の固定標準行列を適用します。正規化した元の色、選択した色覚タイプ、変換後の16進数色、赤・緑・青の各チャンネル値を返します。デザイン初期の確認、パレット比較、仕様書作成、自動品質検査に役立つ実用的な近似です。視覚を診断したり、すべての方の知覚を正確に再現したりするものではありませんが、公開前に紛らわしい色の変化を見つけやすくします。
元の色とシミュレーション種別を選択します
最初に、sRGB色を16進数で入力してください。#F80のような3桁の短縮形式と、#FF8800のような6桁の完全形式を利用できます。続いて、1型色覚、2型色覚、3型色覚のいずれかを選択します。1型色覚は長波長に反応する錐体の機能がない状態をモデル化し、赤を含む色の関係が変化する傾向があります。
2型色覚は中波長に反応する錐体の機能がない状態をモデル化し、緑に関係する区別へ影響することが一般的です。3型色覚は短波長に反応する錐体の機能がない状態をモデル化し、青と黄の関係を変化させる場合があります。指定外の種別を推測して処理することはなく、エラーとして返すため、一括テストやデザインシステム検査の信頼性を保てます。
色名、先頭の番号記号がない値、アルファチャンネル、不正な16進数文字列も受け付けません。返される元の色は6桁の大文字表記に正規化されるため、変換結果と容易に比較できます。
近似値の計算方法を理解します
シミュレーターは、まず16進数の文字列を0から255までの3つの整数sRGBチャンネルに変換します。次に、指定された色覚タイプに対応する固定の3行3列行列を選択します。出力される各チャンネルは、元の赤、緑、青の各値に係数を掛けて合計したものです。
計算値を最も近い整数に丸め、有効なチャンネル範囲に収めてから、6桁の16進数色として整形します。この行列近似は決定論的であり、同じ入力からは必ず同じ出力が得られます。ネットワーク通信、無作為な選択、利用者プロフィール、端末依存の状態は使用しません。
そのため、再現可能な監査やスナップショットテストに適しています。ただし、1つの色見本を変換しただけでアクセシビリティ全体を判定することはできません。実際の色覚には個人差があり、画面の調整状態や周囲の色も知覚に影響します。
この変換は、起こり得る色のずれや見分けにくさを発見するためにお使いください。最終判断の前には、コントラスト測定、色以外の手掛かり、ラベル、模様、画面の全状態を対象にした検証も組み合わせる必要があります。
アクセシブルな設計工程で結果を活用します
返された変換色を、同じパレットに含まれるほかの変換色と比較してください。特に、状態、選択、検証結果、グラフの分類を伝える色は重要です。元は明確に異なる2色でも、特定のシミュレーションでは近い色になる場合があります。
判別しにくいときは、色だけに依存せず、色相、明度、彩度、境界線、アイコン、文字、模様などを調整してください。出力が安定しているため、デザインシステム変更時の回帰確認も簡単です。確かなレビューにするには、コントラスト検査と利用者中心のユーザビリティテストを併用してください。
使用した行列タイプも記録しておくと、チーム内で結果を再現し、パレット変更の理由を正しく共有できます。
活用例
デザインシステムのトークンを確認
新しいトークンを承認する前に、セマンティックパレットの色を対応する3タイプすべてで変換します。
グラフの分類色を検査
系列の変換色を比較し、色相だけでは区別できない場合にラベル、マーカー、模様を追加します。
よくある質問
どの色覚タイプに対応していますか?
1型色覚、2型色覚、3型色覚に対応しています。認識できないタイプを指定すると、入力エラーを返します。
どの色形式を入力できますか?
#RGBまたは#RRGGBB形式の16進数sRGBを入力してください。色名やアルファチャンネル付きの値は利用できません。
医学的診断や知覚の正確な再現に使えますか?
いいえ。 デザイン分析向けの行列近似であり、診断ツールでも、個人の見え方を正確に再現するモデルでもありません。
変換色だけでデザインのアクセシビリティを証明できますか?
できません。 コントラスト、色以外の手掛かり、画面の全状態も確認し、適切な利用者テストを実施してください。
#3A86FFは2型色覚ではどう見えますか?
シミュレーターは#5751DB(赤87、緑81、青219)を返します。パレットのほかの色も同じ型で変換して比べ、近づきすぎる組み合わせにはラベルや模様など色以外の手がかりを加えてください。
関連ツール
開発者向け — APIアクセス
このページの機能はすべてAPIからも利用できます。自社システムに組み込みたいチーム向けのセクションです。それ以外の方は上のツールをそのままお使いください。
エンドポイント
Bearerトークンで認証し、POST1回でタスクをキューに登録します。結果はWebhookまたは署名付きリンクで受け取れます。
お使いのスタックから呼び出す
curl -X POST https://api.kit.forhosting.com/color/blindness-simulate \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"color":"#3A86FF","type":"deuteranopia"}'const res = await fetch("https://api.kit.forhosting.com/color/blindness-simulate", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"color": "#3A86FF",
"type": "deuteranopia"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/blindness-simulate",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"color": "#3A86FF",
"type": "deuteranopia"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/blindness-simulate", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"color":"#3A86FF","type":"deuteranopia"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"color":"#3A86FF","type":"deuteranopia"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/blindness-simulate", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)リクエスト例
{
"color": "#3A86FF",
"type": "deuteranopia"
}レスポンス例
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.blindness_simulate",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}非同期APIです。task_idは即時に返ります。ポーリングは1秒あたり1リクエストまでです。
料金
単価はすべて公開しています。トークン換算や独自クレジットはありません。失敗したタスクは課金されません。
エラー
| HTTP | コード | 意味 |
|---|---|---|
401 | unauthorized | APIキーが無効か、指定されていません。Authorizationヘッダーを確認してください。 |
402 | insufficient_balance | 残高が不足しています。チャージ後に再度お試しください。 |
404 | unknown_type | 指定されたタスクタイプは存在しません。タイプ名を確認してください。 |
429 | rate_limited | リクエストが多すぎます。しばらく待ってから再度お試しください。 |
技術的な注記
元の色とシミュレーション種別を選択します
入力形式を限定することで、フォーム、API、テストスイート、ビルド工程のどこから実行しても同じ結果になります。
アクセシブルな設計工程で結果を活用します
自動化する場合は、パレットの各項目について、対応する各タイプでAPIを呼び出し、正規化された16進数値とRGB値を元のデザイントークンとともに保存します。API料金は1項目あたり$0.002で、ブラウザー版は個別の簡易確認に利用できます。この機能が評価するのは色の変換であり、前景と背景のコントラストや、描画済みページ全体ではありません。
連携の活用例
パレットの回帰テストを自動化
ビルド中に安定した変換値を生成し、色の変更後にアクセシビリティ上の後退を見つけやすくします。
技術的な質問
APIによるシミュレーションの料金はいくらですか?
1項目あたり$0.002です。計算は決定論的で、外部サービスへの通信は行いません。