Vai al contenuto
🛠️ToolsShed

Miscelatore di Colori

Mescola due colori e vedi i risultati in RGB, HEX e HSL.

A 50% / B 50%
#6366f1
#855fdb
#a857c5
#ca50af
#ec4899

Informazioni sullo strumento

Color Mixer è uno strumento semplice ma potente per mescolare due colori ed esplorare i risultati in più formati. Che tu sia un designer che sceglie tavolozze di colori del brand, uno sviluppatore che crea schemi di colore per interfacce, o un artista che sperimenta l'armonia dei colori, questo strumento ti mostra istantaneamente i valori RGB, HEX e HSL di qualsiasi combinazione di colori senza necessità di software grafico o calcoli matematici.

Per usare lo strumento, seleziona o incolla due colori utilizzando i selettori di colore o i campi di input HEX, quindi regola il rapporto di miscelazione usando il cursore per controllare quanto di ogni colore influenza il risultato finale. Il mixer si aggiorna in tempo reale, mostrando l'output miscelato insieme a tutti e tre i formati di colore, rendendo facile copiare i valori esatti per l'uso in codice, file di design o progetti digitali. Puoi anche invertire i colori o regolare i singoli canali RGB per un controllo più preciso.

Domande Frequenti

Implementazione del Codice

# RGB linear interpolation color mixing

def hex_to_rgb(hex_color: str) -> tuple[int, int, int]:
    hex_color = hex_color.lstrip('#')
    return tuple(int(hex_color[i:i+2], 16) for i in (0, 2, 4))

def rgb_to_hex(r: int, g: int, b: int) -> str:
    return f"#{r:02x}{g:02x}{b:02x}"

def mix_colors(color_a: str, color_b: str, ratio: float = 0.5) -> str:
    """
    Mix two hex colors.
    ratio=0.0 -> pure color_a
    ratio=0.5 -> equal mix
    ratio=1.0 -> pure color_b
    """
    r1, g1, b1 = hex_to_rgb(color_a)
    r2, g2, b2 = hex_to_rgb(color_b)

    r = round(r1 + (r2 - r1) * ratio)
    g = round(g1 + (g2 - g1) * ratio)
    b = round(b1 + (b2 - b1) * ratio)

    return rgb_to_hex(r, g, b)

# Generate gradient steps
def gradient_steps(color_a: str, color_b: str, steps: int = 5) -> list[str]:
    return [mix_colors(color_a, color_b, i / (steps - 1)) for i in range(steps)]

print(mix_colors("#6366f1", "#ec4899", 0.5))  # #a7559d
print(gradient_steps("#6366f1", "#ec4899"))

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.