Bitmap bitmap = BitmapFactory.decodeFile(filepath);
//Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher);
Canvas canvas = new Canvas(bitmap);
崩溃
Immutable bitmap passed to Canvas constructor
原因
Immutable bitmap passed to Canvas constructor 异常-CSDN博客
BitmapFactory.decodeFile(),BitmapFactory.decodeResource() 创建的 bitmap 是 Immutable(不可改变的),不能修改。
解决
Bitmap bitmap = BitmapFactory.decodeFile(filepath).copy(Bitmap.Config.ARGB_8888, true);
//Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.mipmap.ic_launcher).copy(Bitmap.Config.ARGB_8888, true);
Canvas canvas = new Canvas(bitmap);