android图片缩小和放大Matrix
/**Bitmap放大的方法*/?
private static Bitmap big(Bitmap bitmap) {?
Matrix matrix = new Matrix();?
matrix.postScale(1.5f,1.5f); //長和寬放大縮小的比例?
Bitmap resizeBmp = Bitmap.createBitmap(bitmap,0,0,bitmap.getWidth(),bitmap.getHeight(),matrix,true);?
return resizeBmp;?
}?
/**Bitmap縮小的方法*/?
private static Bitmap small(Bitmap bitmap) {?
Matrix matrix = new Matrix();?
matrix.postScale(0.8f,0.8f); //長和寬放大縮小的比例?
Bitmap resizeBmp = Bitmap.createBitmap(bitmap,0,0,bitmap.getWidth(),bitmap.getHeight(),matrix,true);?
return resizeBmp;?
}
?
??????? // 繪制圖片
??????????? int saveCount = canvas.getSaveCount();
??????????? canvas.save();
??????????? canvas.translate(pLeft, pTop);?? //畫布畫筆起點位置
??????????? if (item.matrix != null) {
??????????????? canvas.concat(item.matrix);? //畫布添加matrix矩陣
??????????? }
??????????? // 設置該圖繪制的區域, 圖片的繪制區域參數會跟隨matrix參數的scale 同步放大縮小,比如如果繪制起點是100px處同時matrix.scale=0.5
//??????????? 則實際繪制中繪制起點在50px處
??????????? canvas.clipRect(item.rect);
??????????? // 繪制三張圖片
??????????? //? canvas.drawBitmap()中繪制起點位置隨matrix參數的scale 同步放大縮小,比如如果繪制起點是100px處同時matrix.scale=0.5
//??????????? 則實際繪制中繪制起點在50px處
??????????? canvas.drawBitmap(item.bitmap,
??????????????????? item.rect.left, item.rect.top, mPaint);
??????????? canvas.restoreToCount(saveCount);
? ? 本文轉自 一點點征服 ? 博客園博客,原文鏈接:http://www.cnblogs.com/ldq2016/p/5396559.html,如需轉載請自行聯系原作者
總結
以上是生活随笔為你收集整理的android图片缩小和放大Matrix的全部內容,希望文章能夠幫你解決所遇到的問題。