Ich habe 2 Farben
#a1a2a4
- schwarz (
#000000
) - weiß (
#ffffff
)
Jetzt muss ich wissen, wie viel Deckkraft (in Prozent) ich auf die zweite Farbe (schwarz) vor dem Hintergrund der dritten Farbe (weiß) auftragen muss, um eine Farbe zu erzielen, die der ersten "am nächsten" (wie vom Auge bestimmt) liegt Farbe ( #a1a2a4
).
Wie mache ich das?
color
transparency
Pacerier
quelle
quelle
gray
Ton, der der angegebenen Farbe am nächsten kommt, richtig?Antworten:
Dieser Fall ist mehr oder weniger einfach (Sie haben es mit Schwarzweiß zu tun).
Überprüfen Sie nach dem Auftragen der Farbe (# a1a2a4) die RGB-Werte:
Sie können sehen, dass es ungefähr 162 (Durchschnitt) hat, und wenn Sie wissen, dass es von 0 bis 255 gehen kann, müssen Sie nur den Prozentsatz herausfinden:
162 * 100/255 = ~ 63,5%
Da RGB im Vergleich zu CMYK umgekehrt funktioniert (in Bezug auf die Farbmischung bedeutet dh Vollfarbmischung Weiß und bei CMYK Vollfarbmischung Schwarz), ist der tatsächliche Prozentsatz in diesem Fall die Differenz zwischen 100% und dem Wert dass wir haben:
100 - 63,5 = 36,5%
Wenn Sie also 36% der Deckkraft anwenden, hat es diese Farbe, ich habe es gerade getestet.
Natürlich funktioniert diese Methode in Fällen mit komplexeren Farben nicht und ich weiß nicht, wie ich den Prozentsatz ermitteln kann. Ich würde das klassische Ausprobieren durchführen.
quelle
Die Frage ist, wenn ich es richtig verstehe, "Wie würden Sie dies programmatisch berechnen ?" Es ist ganz einfach, Ihre Zielfarbe in einen Alpha-Wert umzuwandeln.
Weiß == [1,1,1] oder #ffffff oder 255,255,255, abhängig von Ihrer Anwendung. Schwarz == [0,0,0] usw.
Also: Normalisieren Sie den Zielwert (in diesem Fall 0,6314), subtrahieren Sie von 1 und wenden Sie ihn als Alpha-Wert auf die schwarze Ebene an. Sie könnten diesen einen Kanal nach dem anderen machen und die Ergebnisse mitteln, aber warum sollten Sie sich die Mühe machen, da Ihre Farbe (für das Auge) nicht von einem neutralen Grau # a1a1a1 zu unterscheiden ist. (Bei einem sichtbaren Farbton werden die Dinge komplexer, da die Kanäle dann unterschiedliche Werte haben, aber das gleiche Prinzip gilt.)
quelle
Eine etwas schnellere Variante von Versuch und Irrtum:
Erstellen Sie Ihre Hex-Farbe in Photoshop in einem CMYK-Dokument und sehen Sie sich die CMYK-Werte an. Ich bekomme 39/32/31/1.
Erstellen Sie zwei Ebenen, die obere schwarze und die untere weiße.
Öffnen Sie das Infofenster. Ziehen Sie das Ebenenfenster separat auf.
Spielen Sie mit der Deckkraft der schwarzen Ebene. Verwenden Sie die Pipette über Ihrer Farbe und überprüfen Sie im Infofenster, wie nahe Sie kommen. Dies spart Ihnen meistens Zeit beim Ändern der Deckkraft - Abflachen - Farbe prüfen - Abflachen rückgängig machen.
quelle
Aufgrund Ihrer Vordergrund- und Hintergrundfarben (einheitliche Werte für die Kanäle R, G und B) können Sie
#a1a2a4
durch Ändern der Deckkraft keine ungleichmäßige Farbe erzielen, da die Deckkraft alle Kanäle gleichzeitig beeinflusst. Sie können jedoch eine Farbe erzielen, die "nah genug" ist,#a1a1a1
indem Sie die Deckkraft von Schwarz auf einstellen0.37
. Hier ist das Tool, das ich verwendet habe:http://colorizer.org/
#fff
#000
quelle
Das Finden dieser Formel ist eine großartige Übung in der linearen Algebra. Unter Verwendung von RGB und linearer Algebra habe ich diese Matrix M entwickelt. Wenn Sie RGBred = (237,32,36) und RGBblue = (60,84,165) kombinieren möchten, wobei die untere Schicht 100% Deckkraft und die obere Schicht 50% beträgt Die Opazität multipliziert dann Mv, wobei M die Matrix darunter ist und v = (237,32,36,60,84,165). Wir erhalten Mv = (157,777,71,444,104,444).
Der tatsächliche Wert ist (159,71,103), wir sind also ziemlich nah dran, aber es gibt einige Fehler - wahrscheinlich entweder, weil ich gerundete Werte zur Berechnung von M verwendet habe und / oder weil möglicherweise nicht RGB, sondern eine andere Skala zur Berechnung der Transparenz verwendet wird Abflachung. Ich könnte wahrscheinlich eine genauere Matrix mit einem Ansatz vom Typ der kleinsten Quadrate erhalten, aber ich war zu faul.
Die Matrix, die MI hat, ist
quelle