如何在绘制其子集时旋转位图?

时间:2011-03-06 12:16:40

标签: android bitmap rotation drawbitmap

我正在使用

pCanvas.drawBitmap(mBitmap, mRectSrc, mRectDst, mPainter);

绘制位图的子集。我想知道如何旋转该位图 而不影响视图。在我的尝试中,当我将画布设置为旋转时 旋转整个视图(视口)。这不是我想要的。

2 个答案:

答案 0 :(得分:1)

当我必须绘制旋转文本时,我发现程序是调用Canvas.save(),旋转(记住中心点保持不变),执行绘图然后调用Canvas.restore()。我想在这种情况下它也是一样的。

答案 1 :(得分:0)

我所知道的唯一方法就是使用Matrix。试试这个伪代码:

Bitmap bmp = BitmapFactory.decodeResource(getResources(), R.drawable.your_bitmap);
Matrix matrix = new Matrix();
matrix.postRotate(90);
Bitmap rotatedBMP = Bitmap.createBitmap(bmp, 0, 0, bmp.getWidth(), bmp.getHeight(), matrix, true);