Android利用matrix对图片中心旋转

具体原理我真的不知道是什么,因为matrix类设计到矩阵相乘之类的知识,没研究清楚,全靠穷举法试出来的,如果读者知道其原理很希望和你交流经验。

我只贴出最关键的几行代码:

Bitmap a;  //之下省略一系列的引用声明

...

Matrix matrix = new Matrix();

matrix.setTranslate(X, Y);     //设置图片的旋转中心,即绕(X,Y)这点进行中心旋转
matrix.preRotate(degree, (float)a.getWidth()/2, (float)a.getHeight()/2);  //要旋转的角度
canvas.drawBitmap(a, matrix, null);

如果不是很想知道具体代码的原理,那么就照葫芦画瓢的写吧,通过改变X,Y和degree的值,可以使图片绕点(X,Y)旋转degree度。

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wwyjyg.html