Сопоставление режимов смешивания CoreGraphics с Porter-Duff

1

У меня есть приложение для iPhone, которое обрабатывает изображения посредством смешивания двух объектов UIImage через CoreGraphics, в частности CGContextSetBlendMode. В настоящее время я изучаю его перенос на Android. Я прошел процесс объединения объектов Bitmap на Android, используя режимы PorterDuff. Тем не менее, я хочу намного усложнить композитинг. Например, я использую kCGBlendModeHardLight для многих смесей:

Либо умножает, либо экранирует цвета, в зависимости от образца исходного изображения цвет. Если образец исходного изображения цвет светлее, чем на 50% серый, фон освещен, аналогичен скрининг. Если образец исходного изображения цвет более темный, чем 50% серый, фон темнеет, подобно множатся. Если исходное изображение цвет образца равен 50% серого, Исходное изображение не изменяется. Образ образцы, равные чистому черному или чистый белый результат в чистом черном или белый. Общий эффект аналогичен к тому, что вы достигли, блестя резкий прожектор на исходном изображении. Используйте это, чтобы добавить основные моменты в сцену.

Но не знаю в любом случае (если это вообще возможно) подражать этому через Портера-Даффа. Не поддерживает ли Android более совершенные алгоритмы Image Manipulation? Можно ли каким-то образом использовать Porter-Duff для эмуляции более продвинутых режимов наложения?

Теги:
iphone
core-graphics
blending
porter-duff

1 ответ

3
Лучший ответ

В дополнение к уравнениям смешивания 12 Porter-Duff, Android поддерживает Lighten, Darken, Multiply, Screen и скоро Overlay. К сожалению, это означает, что HardLight недоступен, и вам придется реализовать его самостоятельно.

  • 0
    Спасибо за ответ (хотя не тот, на который я надеялся).

Ещё вопросы

Сообщество Overcoder
Наверх
Меню