Contrast de luminanță relativă
Calculează contrastul luminanței relative dintre două culori RGB cu trei canale de opt biți.
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)Proiect
Verifică negru față de alb, culori egale și argumente inversate, respingând canale neîntregi sau în afara intervalului fără a prezenta raportul ca evaluare completă a accesibilității.
Verifică înainte de aplicare
Compară comportamentul real cu rezultatul așteptat. Dacă o verificare eșuează, cercetează cauza înainte de alte modificări.
Modele
Configurează un endpoint compatibil OpenAI sau Anthropic cu URL-ul de bază și cheia API, dacă este necesară. Testează conexiunea. Serverul local trebuie să ruleze; instrumentele externe pot transmite date separat.
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)Leagă calculul culorii de interfața pe care o descrie
LumaGauge este un program Windows pentru programare cu IA, destinat analizei modificărilor interfeței care depind de calcule de culoare. Deschide proiectul și descrie elementul, fundalul și starea de investigat. Asistentul conectat te poate ajuta să inspectezi codul relevant și să discuți o editare, păstrând interfața randată și intrările sale reale în centrul sarcinii.
Exemplul luminance.py sugerează o cerere delimitată despre calculul contrastului. Întreabă de unde provin valorile culorilor și dacă ele corespund culorilor afișate în final. Aplicația le poate transforma înainte de randare, deci funcția auxiliară singură nu poate rezolva problema vizuală. Folosește exemplul ca context de proiect, apoi urmărește rezultatul până la componenta care îl folosește și comportamentul influențat.
Poți selecta un model IA fără restricții printr-un endpoint compatibil OpenAI sau Anthropic acceptat care oferă unul. Serviciul configurat furnizează capacitățile modelului, instrumentele acceptate și eventualele restricții. După examinarea unei modificări propuse, rulează verificări numerice și inspectează stările relevante ale ecranului. Ia în calcul culorile finale ale prim-planului și fundalului, fără a te baza doar pe tokenurile de design. Acest flux te ajută să distingi un defect de calcul de o intrare incorectă sau o problemă de prezentare care necesită altă corecție.
Analiza comportamentului software legat de culori
Un raport calculat de funcția auxiliară certifică interfața?
Nu. Valoarea descrie culorile furnizate în ipotezele calculului. Verifică starea randată efectiv și criteriile aplicabile elementului. Un singur rezultat numeric nu stabilește accesibilitatea întregului ecran sau a întregii aplicații.
Ce fac dacă opacitatea CSS schimbă culoarea vizibilă?
Urmărește culorile efective ale prim-planului și fundalului înainte de a trata tokenurile sursă drept intrări finale. Inspectează elementul randat și eventualele straturi implicate. Întreabă dacă funcția de calcul primește culorile văzute de utilizator, nu o valoare de design anterioară.
Ce intrări sunt utile pentru testarea calculului?
Folosește perechi de referință cunoscute, culori identice și valori la limitele acceptate ale canalelor. Include containere și valori de canale nevalide pentru a verifica respingerea. Compară rezultatele cu o valoare așteptată independentă, fără a înregistra pur și simplu ieșirea noii funcții.
Să ajustez funcția auxiliară sau paleta temei?
Identifică mai întâi dacă nepotrivirea provine din formulă, intrări sau designul vizual dorit. Fiecare indică o modificare diferită. Verifică și componentele vecine dacă se schimbă o valoare comună a paletei, deoarece se pot modifica și relațiile lor de contrast.
LumaGauge · Actualizat 2026-10-25