Вопрос

Есть ли метод изменения значения LSB компонентов java.awt.color RGB?

Это было полезно?

Решение

Немного включив:

int value = someValue | 0x1;

Отключите немного:

int value = someValue & (~0x1);

Включите бит включенным или выключенным, если он был выключен или включен раньше:

int value = someValue ^ 0x1;

Другими словами: SomeValue - это двоичный или с номером с LSB, поэтому полученное число также будет иметь свой LSB.

Somevalue и с номером со всеми битами кроме LSB, поэтому полученное число будет отключить LSB.

Somevalue находится с номером с LSB включенным, поэтому полученное число будет переключать LSB.

Другие советы

Цветовой класс неизменен, вы не можете ничего изменить. Тем не менее, вы можете создать новый цвет с любой ценностью, которую вы хотите. Например,

   int oldValue = oldColor.getRGB();
   int newValue = (oldValue & 0xFFFFFF00) | (lsb & 0xFF);
   Color newColor = new Color(newValue);
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top