canvas.drawBitmap操作的時候,為什么要先對原Bitmap進行Bitmap.createBitmap操作,創建副本,而不是直接在原來的Bitmap上面操作。比如實現一個縮放旋轉Bitmap?bmp?=?BitmapFactory.decodeResource(getResources(),?R.drawable.pic180);??
Matrix?matrix=new?Matrix();
matrix.postScale(0.8f,?0.8f);
matrix.postRotate(45);
Bitmap?dstbmp=Bitmap.createBitmap(bmp,0,0,bmp.getWidth(),bmp.getHeight(),matrix,true);
canvas.drawColor(Color.BLACK);?
canvas.drawBitmap(dstbmp,?10,?10,?null);為什么要創建一個dstbmp副本了,然后在上面操作,而不是直接操作bmp 呢
1 回答

為夢想努力_冬
TA貢獻56條經驗 獲得超14個贊
Bitmap.createBitmap(bmp,0,0,bmp.getWidth(),bmp.getHeight(),matrix,true);主要是這里對Bitmap進行了加工處理,你看這一部分
Matrix?matrix=new?Matrix();
matrix.postScale(0.8f,?0.8f);
matrix.postRotate(45);
都是一些要改變的參數。
- 1 回答
- 0 關注
- 3668 瀏覽
添加回答
舉報
0/150
提交
取消