Ваш ожидаемый результат взят из графического редактора (Photoshop?). Если это так, то это будет результат 32-битного смешения, тогда как похоже, что альфа-смешение на Android выполняется в 16-битном режиме отсюда полосы на заднем плане и ореол вокруг вашего изображения.
Предполагая, что вы используете Bitmap
объекты, вы можете проверить, так ли это, вызвав bitmap.getConfig()
, чтобы найти их глубину цвета (из перечисления Bitmap.Config
).
Редактировать : Еще одна вещь, которая может вызывать ореол - вы говорите, что края вашего спрайта имеют альфа 0, но как насчет значений RGB? Убедитесь, что для параметра ARGB установлено значение полностью белый (ARGB 0x00ffffff), а не черный (ARGB 0x00000000).