C # удалить все, кроме двух наименее значимых битов цвета - PullRequest
4 голосов
/ 27 апреля 2011

На этой странице см. Изображение дерева и подпись к нему. Я планирую реализовать плагин для Paint.NET , чтобы сделать это ... но я не уверен, как.

Я уже перебираю каждый пиксель (для тех, кто интересуется, API-интерфейс Paint.NET делает это эффективным) как ColorBgra (можно преобразовать в System.Drawing.Color), но теперь мне нужно изменить пиксель, чтобы удалить «все, кроме двух наименее значимых бит каждого цвета.»

Как бы я это сделал?

1 Ответ

6 голосов
/ 27 апреля 2011

Для каждого компонента (R, G, B, A) вам необходимо скрыть ненужные биты, например:

colour.R &= 3;
colour.G &= 3;
colour.B &= 3;
colour.A &= 3;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...