Режимы наложения изображений в Android Studio (например, photoshop, paint.net)?

Я пытаюсь смешать два изображения таким же образом, как фотошоп или paint.net смешивают их, с различными режимами смешивания, такими как Difference, Multiply, Additive, Color Burn, Glow, etc.

Я обнаружил, что PorterDuff.Mode работает довольно хорошо, но в нем отсутствуют эффекты наложения (в нем есть только "Добавить", "Умножение", "Экран"). Есть ли способ получить больший диапазон режимов наложения? Есть ли способ отредактировать android.graphics.PorterDuff; библиотека, чтобы получить больше режимов наложения? Есть идеи?

Например: ЭТО превращается в это: Результат

Это код porterduff, который я использую, кстати:

private static Bitmap Result(Bitmap bottomImage, Bitmap topImage){


    int sizex = bottomImage.getWidth();
    int sizey = bottomImage.getHeight();

    Paint paint = new Paint();
    Bitmap imageBitmap = Bitmap.createBitmap(sizex, sizey , Bitmap.Config.ARGB_8888);
    Canvas comboImage = new Canvas(imageBitmap);
    comboImage.drawBitmap(bottomImage, 0f, 0f, paint);;
    PorterDuff.Mode mode = PorterDuff.Mode.MULTIPLY;//Porterduff MODE
    paint.setXfermode(new PorterDuffXfermode(mode));

    Bitmap ScaledtopImage = Bitmap.createScaledBitmap(topImage, sizex, sizey, false);
    comboImage.drawBitmap(ScaledtopImage, 0f, 0f, paint);

    return imageBitmap;

}

1 ответ

Я не очень разбираюсь в обработке изображений, но у PorterDuff есть несколько режимов наложения, а именно: затемнение, осветление, умножение, экран и наложение. Затем вы можете использовать in, atop, xor и т. Д., Чтобы получить требуемый выбор смешанных секций.

http://ssp.impulsetrain.com/porterduff.html https://developer.android.com/reference/android/graphics/PorterDuff.Mode

Другие вопросы по тегам