Frage

Gibt es eine Methode zum Ändern des LSB -Werts von Java.awt.Color RGB -Komponenten?

War es hilfreich?

Lösung

Ein wenig einschalten:

int value = someValue | 0x1;

Ein bisschen abgeschaltet:

int value = someValue & (~0x1);

Umschalten des Bits ein- oder ausgeschaltet, wenn es vor oder eingeschaltet war:

int value = someValue ^ 0x1;

Mit anderen Worten: Ein gewisser Wert ist binär oder mit einer Zahl mit dem LSB eingeschaltet, sodass die resultierende Zahl auch ihre LSB aufweist.

Ein bisschen Wert ist und 'mit einer Zahl mit allen Bits außer LSB auf die resultierende Zahl wird LSB ausgeschaltet.

Ein bisschen wird mit einer Zahl mit dem LSB mit einer Nummer mit einem Eingeschoss mit dem LSB umgeschaltet.

Andere Tipps

Die Farbklasse ist unveränderlich, Sie können nichts ändern. Sie können jedoch eine neue Farbe mit jedem gewünschten Wert erstellen. Zum Beispiel,

   int oldValue = oldColor.getRGB();
   int newValue = (oldValue & 0xFFFFFF00) | (lsb & 0xFF);
   Color newColor = new Color(newValue);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top