Contrasto di luminanza relativa
Calcola il contrasto di luminanza relativa fra due colori RGB di tre canali a otto bit.
def contrast_ratio(left, right):
def luminance(rgb):
if type(rgb) not in (list, tuple) or len(rgb) != 3:
raise ValueError("rgb.container")
rgb = tuple(rgb)
if len(rgb) != 3 or any(type(c) is not int or not 0 <= c <= 255 for c in rgb):
raise ValueError("rgb.channel")
channels = [c / 255 for c in rgb]
linear = [c / 12.92 if c <= 0.04045 else ((c + 0.055) / 1.055)**2.4
for c in channels]
return sum(c * w for c, w in zip(linear, (0.2126, 0.7152, 0.0722)))
a, b = sorted((luminance(left), luminance(right)))
return (b + 0.05) / (a + 0.05)Progetto
Verifica bianco e nero, colori uguali e argomenti invertiti, rifiutando canali non interi o fuori intervallo senza presentare il rapporto come verifica completa di accessibilità.
Controlla prima di applicare
Confronta il comportamento effettivo con il risultato atteso. Se una verifica fallisce, indaga la causa prima di altre modifiche.
Modelli
Configura un endpoint compatibile con OpenAI o Anthropic usando URL di base e chiave API, se necessaria. Prova la connessione. Il server locale deve essere in esecuzione; gli strumenti remoti possono trasmettere dati separatamente.
def contrast_ratio(left, right):
def luminance(rgb):
if type(rgb) not in (list, tuple) or len(rgb) != 3:
raise ValueError("rgb.container")
rgb = tuple(rgb)
if len(rgb) != 3 or any(type(c) is not int or not 0 <= c <= 255 for c in rgb):
raise ValueError("rgb.channel")
channels = [c / 255 for c in rgb]
linear = [c / 12.92 if c <= 0.04045 else ((c + 0.055) / 1.055)**2.4
for c in channels]
return sum(c * w for c, w in zip(linear, (0.2126, 0.7152, 0.0722)))
a, b = sorted((luminance(left), luminance(right)))
return (b + 0.05) / (a + 0.05)Collega un calcolo dei colori all’interfaccia che descrive
LumaGauge è un software di programmazione con IA per Windows per esaminare modifiche dell'interfaccia dipendenti dai calcoli dei colori. Apri il progetto e descrivi elemento, sfondo e stato da indagare. L'assistente connesso può aiutarti a esaminare il codice pertinente e discutere una modifica, mentre mantieni al centro dell'attività l'interfaccia renderizzata e i suoi input effettivi.
L'esempio luminance.py suggerisce una richiesta mirata su un calcolo del contrasto. Chiedi da dove provengano i valori dei colori e se corrispondano ai colori infine visualizzati. Un'applicazione può trasformare quei valori prima del rendering, quindi la sola funzione ausiliaria non risolve la questione visiva. Usa l'esempio come contesto del progetto, poi segui il risultato fino al componente che lo usa e al comportamento che influenza.
Puoi selezionare un modello IA senza restrizioni tramite un endpoint supportato compatibile con OpenAI o Anthropic che ne offra uno. Il servizio configurato fornisce capacità del modello, strumenti supportati ed eventuali restrizioni. Dopo aver esaminato una modifica proposta, esegui controlli numerici ed esamina gli stati pertinenti della schermata. Considera primo piano e sfondo finali invece di affidarti soltanto ai token di design. Questo flusso aiuta a distinguere un difetto di calcolo da un input errato o un problema di presentazione che richiede una correzione diversa.
Esaminare il comportamento software legato ai colori
Un rapporto calcolato dalla funzione ausiliaria certifica l’interfaccia?
No. Il valore descrive i colori forniti secondo le ipotesi del calcolo. Esamina lo stato effettivamente renderizzato e i criteri applicabili all’elemento. Un singolo risultato numerico non dimostra l’accessibilità dell’intera schermata o applicazione.
Cosa succede se l’opacità CSS cambia il colore visibile?
Segui primo piano e sfondo effettivi prima di trattare i token sorgente come input finali. Esamina l’elemento renderizzato e gli eventuali livelli sovrapposti. Chiedi se il calcolo riceva i colori visti dall’utente invece di un precedente valore di design.
Quali input sono utili per provare il calcolo?
Usa coppie di riferimento note, colori identici e valori ai limiti accettati dei canali. Includi contenitori e valori dei canali non validi per verificare il rifiuto. Confronta i risultati con un valore atteso indipendente invece di registrare soltanto l’output della nuova funzione.
Devo modificare la funzione ausiliaria o la palette del tema?
Individua prima se la discrepanza proviene dalla formula, dagli input o dal design visivo previsto. Ciascuna causa richiede una modifica diversa. Esamina i componenti vicini se cambia un colore condiviso della palette: possono cambiare anche i loro rapporti di contrasto.
LumaGauge · Aggiornato 2026-10-25