HSL-zu-HWB-Konverter
Beschreiben Sie eine Farbe als Farbton mit Weiß- und Schwarzanteil: hsl(210, 80%, 45%) wird auf demselben Farbton zu 9 % Weiß und 19 % Schwarz, geschrieben als hwb(210 9% 19%). Kostenlos in Ihrem Browser.
- Kostenlos
- Läuft in Ihrem Browser
- Ohne Anmeldung
- Ihre Daten bleiben auf Ihrem Gerät
Im Browser ausführen – kostenlos
Rechenbeispiel
- H
- 210
- S
- 80
- L
- 45
- W
- 9
- B
- 19
- Css
- hwb(210 9% 19%)
HSL beschreibt eine Farbe über den Farbton auf dem Rad, die Sättigung als wie lebhaft die Mischung ist und die Helligkeit als wie nah sie an Schwarz oder Weiß liegt. HWB nutzt denselben Farbton und benennt, wie viel Weiß und wie viel Schwarz in den reinen Farbton gemischt werden. Wer Farben bereits in HSL wählt, braucht HWB oft, um hwb()-Funktionen des CSS Color Module zu schreiben, mit Illustrationswerkzeugen zu sprechen, die Schieberegler für Weiß- und Schwarzanteil zeigen, oder eine Probe als Aufhellung plus Abdunkelung zu dokumentieren. Dieser Konverter nimmt den Farbton in Grad von null bis dreihundertsechzig sowie Sättigung und Helligkeit als Prozentsätze von null bis hundert und liefert das passende HWB-Tripel mit einer CSS-Zeichenkette hwb().
Wie HSL auf Farbton, Weißanteil und Schwarzanteil abgebildet wird
Der Farbton ist HSL und HWB gemeinsam: null Grad ist reines Rot, einhundertzwanzig reines Grün, zweihundertvierzig reines Blau, und dreihundertsechzig schließt den Kreis wieder bei Rot. HSL speichert dann die Sättigung als wie weit ein Grau der gewählten Helligkeit zur vollchromatischen Farbe bei diesem Farbton gedehnt wird, und die Helligkeit als die Mischung zwischen Schwarz bei null Prozent, einem Mittelton nahe fünfzig Prozent und Weiß bei hundert Prozent. HWB benennt dieselbe Farbe als reinen Farbton, gemischt mit einer Weißmenge und einer Schwarzmenge.
Auf dem Einheitsintervall ist die Abbildung geschlossen und braucht keinen Umweg über ganzzahliges RGB: das Chroma ist eins minus dem Absolutbetrag von zweimal Helligkeit minus eins, alles multipliziert mit der Sättigung; der Weißanteil ist die Helligkeit minus der Hälfte des Chromas; der Schwarzanteil ist eins minus der Helligkeit minus der Hälfte des Chromas. Das entspricht dem minimalen RGB-Kanal als Weiß und eins minus dem maximalen RGB-Kanal als Schwarz — so definiert das CSS Color Module Level Four HWB.
Bei Sättigung null verschwindet das Chroma, sodass Weiß- und Schwarzanteil komplementäre Prozentsätze werden, die sich zu hundert addieren und ein Grau, Schwarz oder Weiß beschreiben. Bei Helligkeit fünfzig Prozent und Sättigung hundert Prozent ist das Chroma eins und sowohl Weiß als auch Schwarz fallen auf null, das ist der reine Farbton. Der Farbton muss im geschlossenen Intervall von null bis dreihundertsechzig liegen; Sättigung und Helligkeit müssen jeweils zwischen null und hundert Prozent einschließlich liegen.
Was Sie senden und was Sie zurückerhalten
Senden Sie drei endliche Zahlen unter den Feldern h, s und l. Das Feld h ist der Farbton in Grad und ist erforderlich; es muss zwischen null und dreihundertsechzig einschließlich liegen, weil HSL und HWB diesen Winkel teilen und dieser Konverter keine Umwicklung erfindet. Die Felder s und l sind Sättigung und Helligkeit als Prozentsätze von null bis hundert.
Liegt die Sättigung außerhalb von null bis hundert, erklärt die Antwort, dass s ein Prozentsatz in diesem geschlossenen Band sein muss, damit ein Client den Token vor dem erneuten Versuch klemmen oder korrigieren kann; dieselbe Regel gilt für die Helligkeit. Bei Erfolg gibt die Antwort die bereinigten h-, s- und l-Werte zurück, meldet Weißanteil w und Schwarzanteil b als Prozentsätze, nestet das Quellobjekt hsl und das Ergebnisobjekt hwb, erzeugt eine druckbare CSS-Zeichenkette der Form hwb(H W% B%) und enthält eine kurze Formelnotiz, die die Chroma-Identitäten wiederholt.
Klassische Prüfungen umfassen mitteltoniges Blau-Cyan mit Farbton zweihundertzehn, Sättigung achtzig und Helligkeit fünfundvierzig, abgebildet auf neun Prozent Weiß und neunzehn Prozent Schwarz; reines Rot mit Farbton null, Sättigung hundert und Helligkeit fünfzig, abgebildet auf null Weiß und null Schwarz; sowie jeden Farbton mit Sättigung null, der zu einer achromatischen Mischung kollabiert, deren Weiß plus Schwarz hundert ergibt.
Wo HSL-zu-HWB-Umwandlung in der Praxis vorkommt
Designsysteme verfassen Markenrampen oft in HSL, damit Produktteams die Helligkeit für zugänglichen Kontrast stufen und zugleich Farbton und ein Sättigungsband stabil halten; moderne Stylesheets, Illustrations-Apps und mehrere native Wähler zeigen jedoch inzwischen HWB, weil das Mischen eines reinen Farbtons mit Weiß und Schwarz der Sprache der Maler über Aufhellungen und Abdunkelungen entspricht. Front-End-Ingenieure, die einen Token von hsl()-Custom-Properties nach hwb() migrieren, brauchen ein deterministisches Orakel, das nicht von der Serialisierung des berechneten Stils eines bestimmten Browsers abhängt.
Datenvisualisierungs- und generative Kunstwerkzeuge, die kategoriale Paletten bauen, indem sie den Farbton bei fester Sättigung und Helligkeit fortschalten, müssen dennoch HWB ausgeben, wenn ein Renderer oder eine Druckpipeline Weiß- und Schwarzanteil statt einer dritten Helligkeitsachse verlangt. Lehrpläne und Bootcamp-Lektionen lehren zylindrische Modelle nebeneinander und brauchen einen einzigen vertrauenswürdigen Schlüssel für Hausaufgaben, der zu den Identitäten des CSS Color Module passt und nicht zu einem Screenshot eines Farbwählers. Barrierefreiheits-Workflows, die wahrgenommene Helligkeit in HSL anpassen und dann an einen HWB-basierten Editor übergeben, brauchen weiterhin exakte Kanalabbildung ohne browser-only APIs.
Wenn Sie später HSL nach RGB, HSL nach HSV, Multi-Format-Umwandlung HEX LAB CMYK oder WCAG-Kontrastprüfungen brauchen, behandeln Sie diese als separate Suchintentionen und Landings statt diese dedizierte HSL-zu-HWB-Konverterseite zu überladen.
Anwendungsfälle
Design-Tokens von HSL nach CSS hwb()
Wandeln Sie HSL-Markenrampen in Tripel aus Farbton, Weißanteil und Schwarzanteil für moderne Stylesheets, Illustrationswähler und Dokumentationstabellen um, die HWB sprechen.
Dokumentation von Aufhellung und Abdunkelung
Drücken Sie eine HSL-Probe als reinen Farbton gemischt mit Weiß und Schwarz aus, damit Design-Reviews über Aufhellungen und Abdunkelungen ohne ein zweites Farbmodell sprechen können.
Häufige Fragen
Welche Bereiche akzeptieren Farbton, Sättigung und Helligkeit?
Der Farbton h muss zwischen 0 und 360 Grad einschließlich liegen. Sättigung s und Helligkeit l sind Prozentsätze von 0 bis 100.
Ändert sich der Farbton zwischen HSL und HWB?
Nein. Der Farbton ist beiden Modellen gemeinsam und wird unverändert kopiert. Nur Weißanteil und Schwarzanteil werden aus Sättigung und Helligkeit berechnet.
Wie werden Weißanteil und Schwarzanteil berechnet?
Auf dem Einheitsintervall gilt für das Chroma C = (1 − |2L − 1|) · S. Der Weißanteil ist L − C/2 und der Schwarzanteil ist 1 − L − C/2. Ergebnisse kommen als Prozentsätze von 0 bis 100 zurück.
Wie sieht eine CSS-Zeichenkette hwb() aus?
Das Feld css ist eine Color-Module-Zeichenkette wie hwb(210 9% 19%). Der Farbton ist der gemeinsame Winkel; die zwei Prozentsätze sind Weißanteil und Schwarzanteil.
Was ergibt hsl(210, 80%, 45%) in HWB?
Der Farbton bleibt 210, der Weißanteil beträgt 9 % und der Schwarzanteil 19 %. Als CSS-Wert lautet das hwb(210 9% 19%) und lässt sich direkt in ein Stylesheet übernehmen.
Verwandte Tools
Für Entwickler — API-Zugang
Alles auf dieser Seite ist auch per API verfügbar. Dieser Abschnitt richtet sich an Teams, die es in ihre eigenen Systeme einbinden möchten; alle anderen nutzen einfach das Tool oben.
Endpunkt
Authentifizierung per Bearer-Token. Ein einziger POST stellt die Aufgabe in die Warteschlange; das Ergebnis erhalten Sie per Webhook oder über einen signierten Link.
Aufruf aus Ihrem Stack
curl -X POST https://api.kit.forhosting.com/color/hsl-hwb \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"h":210,"s":80,"l":45}'const res = await fetch("https://api.kit.forhosting.com/color/hsl-hwb", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"h": 210,
"s": 80,
"l": 45
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/color/hsl-hwb",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"h": 210,
"s": 80,
"l": 45
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/color/hsl-hwb", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"h":210,"s":80,"l":45}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"h":210,"s":80,"l":45}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/color/hsl-hwb", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Beispiel-Anfrage
{
"h": 210,
"s": 80,
"l": 45
}Beispiel-Antwort
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "color.hsl_hwb",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}Die API arbeitet asynchron: Sie erhalten sofort eine task_id. Polling ist mit 1 Anfrage pro Sekunde erlaubt.
Preis
Der Preis steht auf der Seite – keine Tokens, keine Credits. Fehlgeschlagene Aufgaben werden nicht berechnet.
Fehler
| HTTP | Code | Bedeutung |
|---|---|---|
401 | unauthorized | Der API-Schlüssel fehlt oder ist ungültig – prüfen Sie den Authorization-Header (Bearer). |
402 | insufficient_balance | Ihr Guthaben reicht für diese Aufgabe nicht aus – Aufladungen verfallen nicht. |
404 | unknown_type | Unbekannter Aufgabentyp – prüfen Sie das Feld „type“ gegen den Katalog. |
429 | rate_limited | Zu viele Anfragen – warten Sie kurz; Polling ist mit 1 Anfrage pro Sekunde erlaubt. |
Technische Hinweise
Sättigung und Helligkeit außerhalb der erlaubten Spannen scheitern mit einem klaren invalid_input-Fehler, damit fehlerhafte Tokens nie still geklemmt werden.
Wie HSL auf Farbton, Weißanteil und Schwarzanteil abgebildet wird
Die Pipeline ist reine Gleitkommaarithmetik ohne Zufallsseeds, ohne Wanduhren-Zeitstempel und ohne Netzwerkanrufe, sodass identische HSL-Eingaben stets dasselbe JSON erzeugen. Werte außerhalb dieser Bänder scheitern mit invalid_input statt stiller Umwicklung oder Klemmen ohne Hinweis.
Was Sie senden und was Sie zurückerhalten
Fehlende Felder, leere Zeichenketten, nichtnumerische Tokens, NaN und Infinity scheitern mit invalid_input unter Nennung des Feldes und werden nicht berechnet. Der Preis erfolgreicher API-Aufrufe ist die veröffentlichte Basis von $0.002 pro Element; Validierungsfehler verbrauchen kein Prepaid-Guthaben.
Wo HSL-zu-HWB-Umwandlung in der Praxis vorkommt
Da diese Fähigkeit eine reine Parse-Engine ist, gilt der veröffentlichte API-Grundpreis von $0.002 pro erfolgreichem Element und fehlgeschlagene Validierung wird nicht berechnet.
Integrationsbeispiele
Massen-Fixtures für Tokens und Lehrpläne
Skripten Sie die deterministische HSL-zu-HWB-Umwandlung für Regressions-Fixtures, Hausaufgaben-Schlüssel und Palettenexporte mit einer API zu $0.002 pro Element.
Technische Fragen
Was kostet der HSL-zu-HWB-Konverter?
Das Browser-Tool ist kostenlos und läuft lokal. API-Anfragen nutzen das Prepaid-Guthaben von KIT zu $0.002 pro erfolgreichem Element; ungültige Eingabe wird nicht berechnet.