Как устранить края рисунка при использовании PorterDuff,DST_OUT
(Android) я пытаюсь использовать DST_OU
T, чтобы удалить предыдущий рисунок, чтобы получить аналогичный эффект стирания, но результат всегда будет оставлять ребро. Я не знаю, как устранить это, кто может мне помочь.
private void init(){
paint = new Paint();
bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher_round);
paint.setXfermode(new PorterDuffXfermode(PorterDuff.Mode.DST_OUT));
setLayerType(View.LAYER_TYPE_SOFTWARE, null);
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawBitmap(bitmap, 200, 500, null); //this is the source.
canvas.drawBitmap(bitmap, 0, 0, null);
canvas.drawBitmap(bitmap, 0, 0, paint);
}
Результат: