欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

android图像绘制(一)多种方法做图像镜像

程序员文章站 2023-12-14 00:00:58
在android中做图像镜像有很多方法,今天算是学习了! 两种方法如下: 复制代码 代码如下: //方法一 matrix matrix = new matrix(); ma...
在android中做图像镜像有很多方法,今天算是学习了!
两种方法如下
复制代码 代码如下:

//方法一
matrix matrix = new matrix();
matrix.postscale(leftorright, 1, bmpw/2, bmph/2);//前两个是xy变换,后两个是对称轴中心点
matrix.posttranslate(x, y);
canvas.drawbitmap(bmpluffy[0], matrix, paint);
//方法二
// canvas.save();
// canvas.scale(-1, 1, x + bmpluffy[0].getwidth() / 2, y + bmpluffy[0].getheight() / 2);
// canvas.drawbitmap(bmpluffy[0], x, y, paint);
// canvas.restore();

方法一,使用矩阵的方式(3x3)矩阵
1、先使用postscale的方式将图片以点(bmpw/2,bmph/2)为中心,以x=bmpw/2为对称轴翻转;
2、使用posttranslate,将图片移到(x,y)坐标
方法二,画布翻转(略)
注意如下问题:
对于其中的bmpw和bmph是指所用图片的宽高,需要使用图片bmp.getwidth()和bmp.getheight()获取,
不能使用pc上看到的大小,否则可能会出现错位!
-----------------------------------------------------------------------
如果对matrix不是很了解的话,可以参考api文档,或网络文章

上一篇:

下一篇: