2012-04-28 22 views
0

我有一個圖像,現在我想調整此圖像的大小,因此我使用矩陣來實現它。但是,當我在畫布上繪製這個調整大小的位圖時,這裏是我的代碼...我終於發現,我畫的矩形是比canvas.I的調整位圖繪製小不知道爲什麼:(已調整大小的位圖的寬度和高度與調整大小的位圖在畫布上的大小不一樣

Matrix m=new Matrix(); 
    m.setScale(ratio,ratio); 
    m.postRotate(Angle,bitmap.getWidth()/2,bitmap.getHeight()/2); 
    newbitmap=Bitmap.createBitmap(bitmap, 0, 0,bitmap.getWidth(), bitmap.getHeight(), m,true); 
    canvas.drawBitmap(newbitmap,0,0, null); 
    canvas.drawRect(0,0,newbitmap.getWidth(),newbitmap.getHeight(), paint); 

回答

0

所以你需要做的是用什麼嘗試創建的位圖的高度和寬度相同,同時將其繪製在畫布上。有時可能會變得正確。此代碼可能會對您有所幫助。

Bitmap Rbitmap = Bitmap.createBitmap(bitmap).copy(
       Config.ARGB_4444, true); 


     Canvas canvas = new Canvas(Rbitmap); 

     canvas.drawBitmap(label, -9, Rbitmap.getHeight()-label.getHeight()-10, null); 
     canvas.save();