调整大小的位图的宽度和高度与画布上调整大小的位图绘制不同

时间:2012-04-28 03:31:13

标签: android bitmap resize width scale

我有一个图像,现在我想要调整此图像的大小,所以我使用矩阵来实现它。但是当我在画布上绘制这个调整大小的位图时,这是我的代码......我终于找到了我画的矩形小于画布上调整大小的位图。我不知道为什么:(

    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);

1 个答案:

答案 0 :(得分: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();