So berechnen Sie den gewünschten Farbton-drehen, um zu generieren bestimmte Farbe?

Habe ich ein weißes Bild, dass ich als hintergrund für ein div, und ich würde gerne in der Farbe der Designs Hauptfarbe. Ich bin mir bewusst, das ich tun kann:

filter: sepia() saturate(10000%) hue-rotate(30deg);

Zyklus und durch hue-rotate zu finden, eine Farbe, aber ist es möglich zu berechnen, diesen Wert im Voraus? Gegeben, dass der angegebene hex-Wert ist ziemlich dunkel, ich Stelle mir vor ich muss die invert(%) gefiltert werden.

Gegeben, einen hex-Wert von #689d94 was Mathe muss ich tun, um zu berechnen, den gewünschten hue-rotate und invert zu konvertierenden Wert meiner weißen hintergrund-Bild in der gleichen Farbe?

Bearbeiten

Hier ist ein Ausschnitt von einem div mit einem weißen hintergrund Bild gefiltert wird grün. Der trick hier ist es die ganze div, die gefiltert wird, nicht nur die Bild. Wenn ich geben Sie text in das div den text Farbe grün als gut.

CSS:

div {
  background:url(http://richard.parnaby-king.co.uk/basket.svg) no-repeat scroll 0 0 transparent;
  background-size:5em;
  width:5em;
  height:5em;
  -webkit-filter: invert(25%) sepia() saturate(100000%) hue-rotate(174deg);
  filter: invert(25%) sepia() saturate(100000%) hue-rotate(174deg);
}

HTML:

<div>
  </div>

  • Ja, es ist eine tatsächliche hintergrund Bild.
  • Dann (wieder AFAIK)..das ist nicht möglich, Filter angewendet werden, um die tatsächlichen Bilder.
  • Welche Einschränkungen sind Sie imposant in dieser Frage? Ich denke, das könnte mehr oder weniger erreichbar mit filter: url(#mySvgFilter). Das würde erfordern, können Sie entweder ein svg-element irgendwo auf der Seite oder eine SVG-Dateien irgendwo. Wäre das eine praktikable Lösung? Seltsam genug, ich konnte nicht die Farbe exakt übereinstimmen (obwohl Sie sollte), wenn der Farb-Matrizen, aber das wäre mir Missverständnis etwas im Zusammenhang mit den Füllmethoden. Auch, wenn ich Fragen darf, was ist die darunterliegende problem, das Sie lösen möchten?
  • Ursprünglich war ich versucht, um die Anzahl von http-Anfragen, die ein Benutzer benötigen würde, um durch den Einsatz von nur einem svg-Bild (der Korb wurde an anderer Stelle verwendet wird auf der Seite) und ich wollte nur, um die Farbe zu ändern mit CSS. Letztlich habe ich am Ende mit zwei anderen Bildern (eins für die dunkelgrünen, oben, und einmal in schwarz), aber dies ist immer noch eine Frage, ich bin auf der Suche nach einer Antwort auf. Für Einschränkungen - ich bin auf der Suche nach einer Reihe von Schritten oder ein Verfahren, dem ich Folgen kann, dass, wenn eine hex-Eingabe, gibt mir eine Liste der Filter und der Werte, die ich brauche, zu verwenden, um die Farbe meiner weißen Bild.
  • Ist es möglich eine inline-svg-filter?
  • Wenn Sie inline-svg-Sie werden in der Lage sein, es zu ändern Attribute, wie Farben und Größe etc.. css-tricks.com/using-svg
  • Yup. Aber ich bin daran interessiert, dass die svg als background-image. Plus ich bin echt daran interessiert, wenn die oben genannten möglich ist, wie dies in der Frage.

Schreibe einen Kommentar