ForHosting KIT · 画像の編集・解析

RGB 色域クランプ

範囲外のRGB値を0~255の尺度に戻します。赤300、緑−20、青127.5は255、0、127.5になり、どのチャンネルが変わったかも分かります。途中で丸めることはありません。ブラウザで無料で使えます。

  • 無料
  • ブラウザで動作
  • 登録不要
  • データは端末の外に出ません
ご利用方法 ウェブAPIメールTelegramアプリ 近日
入力した場合
抵抗(Ω)
300
G
-20
B
127.5
結果
抵抗(Ω)
255
G
0
Rgb
rgb(255, 0, 127.5)
変更されたチャンネル
r, g

RGB データに 0 未満または 255 を超えるチャンネルが含まれる場合、このツールで色を有効範囲へ制限できます。赤・緑・青を検証し、それぞれを独立して標準的な 8 ビット範囲の最も近い境界へ補正します。範囲内の値は小数も含めて変更しません。制限は境界を整える処理であり、丸め処理ではないためです。結果には、補正後の各チャンネル、読みやすい RGB 文字列、変更の有無、補正されたチャンネル名が含まれます。簡単な修正はブラウザーで行えます。

RGB 色を有効範囲へ制限する意味

8 ビット RGB 色では、通常、赤・緑・青を 0 から 255 までの両端を含む尺度で表します。この境界を外れたデータは、その範囲では直接表現できません。たとえば赤の 300 は上限を超え、緑の -20 は下限を下回ります。

クランプ処理では、0 未満の値を 0 に、255 を超える値を 255 にし、中間の値はそのまま保持します。各チャンネルは独立して処理されるため、赤を補正しても緑や青は変化しません。結果として制限済みの r、g、b と、同じ色を示す rgb 関数文字列を返します。

HSL、Lab、Display P3、CMYK を変換せず、変換後の見た目の色相を保つ処理も行いません。3 つの数値チャンネルを検証し、透明性と再現性を保って 0~255 の範囲に収めることに特化しています。

入力検証、小数チャンネル、決定論的な結果

3 チャンネルはすべて必須で、有限の数値でなければなりません。フォーム、CSV レコード、クエリ値で使われる厳密な数値文字列は受け付けます。有限値になる場合は科学表記も有効です。

検証後、各値に対して「255 と、0 またはチャンネル値の大きい方との最小値」という式を適用します。この式には、隠れたしきい値、ロケール規則、実行環境に依存する分岐がありません。範囲内の小数は維持されるため、127.5 は 127.5 のままです。

制限と丸めは別の演算であり、これは意図した仕様です。ネットワーク、現在日時、乱数、共有状態、外部モデルを一切使わないため、同じ有効入力からは常に同じシリアライズ結果が得られます。

RGB 制限を処理フローへ組み込む場所

色の値は、前提の異なる複数のシステムを通ることがあります。シェーダー計算は光を加えたときに上限を超え、画像解析の出力には小さな負の成分が入り、表計算の式は 255.2 を生成し、アニメーション補間は一時的に目標値を越える場合があります。

こうした値を Canvas、CSS 生成、サムネイル、機器プロトコル、デザイントークン向けの通常の RGB チャンネルへ渡す境界で、この制限処理が役立ちます。超過する可能性のある計算の後、範囲内の値を要求する処理の前に配置してください。変更情報はログや品質指標にも利用できます。

修正色を採用して処理を安定させながら、上流データに補正が必要だった事実も記録できます。恒常的に壊れた入力を隠す用途や、広色域の知覚的マッピングの代替には使用しないでください。同一のソルバーを共有するため、手動確認した例を規則変更なしで本番テストへ移せます。

レンダリング処理の安定化

計算結果を Canvas、CSS ジェネレーター、画像レンダラーへ渡す前に補正します。

再現可能なテストデータの作成

境界動作を検証し、処理が補正した RGB チャンネルを正確に記録します。

0 未満のチャンネルはどうなりますか?

0 になります。 ほかのチャンネルは個別に評価され、範囲内であれば変更されません。

255 を超えるチャンネルはどうなりますか?

対応する RGB チャンネル範囲の上限である 255 になります。

小数の RGB 値は丸められますか?

いいえ。 0~255 の有限値は保持されます。この機能は境界を制限し、精度を丸めないためです。

制限されずに拒否されるのはどんな値ですか?

チャンネルの欠落、文字、空欄、有限の数でないものは受け付けません。文字として書かれた数値や指数表記は、実数になる場合に受け付けます。

どのチャンネルが補正されたか分かりますか?

はい。結果には変更の有無と、補正したチャンネルが順に表示されます。赤300、緑−20、青127.5なら、青はもともと範囲内なので赤と緑だけが示されます。

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

POSThttps://api.kit.forhosting.com/color/clamp-gamut

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

curl -X POST https://api.kit.forhosting.com/color/clamp-gamut \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"r":300,"g":-20,"b":127.5}'
{
  "r": 300,
  "g": -20,
  "b": 127.5
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "color.clamp_gamut",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

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

1リクエストあたり$0.002

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

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

パイプライン、インポート、テスト、デザインシステムの自動化では、1 リクエスト $0.002 の API をご利用ください。

RGB 色を有効範囲へ制限する意味

さらに changed 真偽値と、順序が固定された channels_changed リストも返すため、お客様が値を比較しなくても、入力がそのまま通ったのか修復されたのかを判定できます。この処理は、色空間変換、知覚的圧縮、異なる色空間間のガマットマッピングとは目的が異なります。

入力検証、小数チャンネル、決定論的な結果

推奨フィールドは r、g、b ですが、説明的な別名 red、green、blue も使用できます。一方、空文字列、単語、真偽値、配列、オブジェクト、Infinity、NaN は invalid_input として拒否します。負のゼロはゼロになり、JSON に不要な符号が残りません。changed は値が境界を越えた場合のみ真になり、channels_changed は対象の短い名前を赤・緑・青の一定順序で示します。

RGB 制限を処理フローへ組み込む場所

テストではチャンネル値と channels_changed の両方を確認すると、将来の変更で折り返し、丸め、色全体の拒否が混入するのを防げます。ブラウザーでは同じ純粋な実装が動作し、自動処理の API 成功リクエストは $0.002 です。

インポートした RGB レコードの修復

表計算、CSV、API のチャンネルを標準 RGB データとして保存する前に範囲内へ収めます。

API リクエストの料金はいくらですか?

成功した API リクエストは $0.002 です。同じ決定論的な処理をブラウザーでも実行できます。

どのような入力が拒否されますか?

欠落、空、数値以外、有限でないチャンネルは invalid_input になります。3 つの RGB チャンネルはすべて必須です。

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