2016-04-19 26 views
0

Ich benutze createJS, um ein einfaches Spiel zu erstellen.CreateJS: wie man die Farbe der Bitmap ändert

Ich habe ein Bild (weiße Füllung und schwarzer Strich) und ich würde die schwarze Farbe in eine andere ändern.

Ist es möglich?

Dank

+0

Sie dieses Haben überprüfen -...> http://stackoverflow.com/questions/23515024/how-i-change-fill-color-of-graphics-in-create-js vielleicht solltest du kein Bild haben, du solltest eine Form haben und dann solltest du die Farbe füllen –

+0

Hallo, vielen Dank für die Antwort, aber ich muss ein Bild laden, keine geometrische Form. –

Antwort

0

Die drei Möglichkeiten, Farbanpassungen in EaselJS zu tun sind:

  1. Composite Operations: Sie können ein Bild zeichnen kann ein Verbundbetrieb (wie zum Beispiel „Ziel-in“) verwendet, um zu bestimmen, wie Pixel werden abgelegt. Dies wird wahrscheinlich nicht das gewünschte Ergebnis bringen. Here is an example eines schwarzen PNG, das mit compositeOperation in verschiedene Farben geändert wird.

  2. Farbfilter. EaselJS hat sowohl eine ColorFilter als auch eine , die beim Ändern von Farben helfen. Die erste verwendet Parameter zum Multiplizieren und Hinzufügen zu den Farb- und Alphakanälen, ist jedoch etwas schwieriger zu verwenden. Die zweite verwendet eine ColorMatrix, um Farbton, Sättigung, Kontrast und Helligkeit anzupassen. Dies funktioniert möglicherweise nicht für Sie, da das Ändern der schwarzen Pixel das Gegenteil von Farbfiltern ist.

  3. Ein benutzerdefinierter Filter. EaselJS unterstützt benutzerdefinierte Filter (wie die Threshold Filter in the extras folder Dies ist wahrscheinlich die beste Wahl, und massieren könnte nehmen zu bekommen, was Sie brauchen

Hoffnung, die etwas Licht wirft

+0

Ok Danke, die dritte Methode funktioniert perfekt. Aber jetzt habe ich ein anderes Problem. Ich habe zwei Bilder, die ich verschieben kann. Ich färbe diese Bilder und wenn diese überlagert sind, muss ich Ändern Sie die Farbe nur in diesem Teil. wie dies http://imgur.com/SoPqxoy –

+0

Composite-Operationen können das in gewissem Umfang tun. Abhängig von Ihrem gewünschten Effekt könnte dies ziemlich schwierig sein. Ich empfehle, eine weitere SO-Frage zu öffnen. – Lanny

Verwandte Themen