У меня есть растровое изображение и вы хотите изменить все черные пиксели в этом растровом изображении на синий. Я знаю, что вы можете сделать это через Bitmap.setPixel, но этот процесс очень медленный (поверьте, я попробовал ... даже делая setPixels вместо setPixel).В Android, как изменить цвет растрового изображения на другой цвет?
Исследование показывает, что люди рекомендуют использовать PorterDuff Xor, но нет никаких сообщений о том, как это было успешно выполнено. Многие люди спрашивают ... никто не излагает ответ.
Так что, используя, краску, растровое изображение и холст, как вы меняете каждый черный пиксель на все синие?
Спасибо!
Вы также использовали 'getPixels' вместо' getPixel'? PorterDuff XOR должен работать, но это не обязательно будет так быстро. – kabuko
, в то время как намного сложнее, используя NDK и делая растровое манипулирование в коде C, это способ получить высокую производительность. – CSmith
Я не пробовал getPixels, а только getPixel. Я мог бы сделать это, я думаю, и посмотреть, достаточно ли это. Думал, что метод PorterDuff должен быть быстрым, но я не могу найти хотя бы один пример этого. Последние несколько часов я прохожу по трассе ColorMatrix, но, похоже, это не работает при смене черного на что-то. Только красный, зеленый или синий для чего-то другого. – user443654