在
Android中做图像镜像有很多方法,今天算是
学习了!
两种方法如下:
代码如下:
//方法一
Matrix matrix = new Matrix();
matrix.postScale(leftOrRight, 1, bmpW/2, bmpH/2);//前两个是xy变换,后两个是对称轴中心点
matrix.postTranslate(x, y);
canvas.drawBitmap(bmpLuffy[0], matrix, p
aint);
//方法二
// 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文档,或
网络文章
您可能感兴趣的文章:Android使用API实现图像扭曲效果示例Android图像处理之绘制圆形、三角形及扇形的头像android图像绘制(七)ClipRect局部绘图/切割原图绘制
总结android图像绘制(六)获取本地图片或拍照图片等图片资源android图像绘制(五)画布保存为指定格式/大小的图片android图像绘制(四)自定义一个SurfaceView控件android图像绘制(三)画布刷屏问题记录android图像绘制(二)画布上放大缩小问题Android
开发笔记之:在ImageView上绘制圆环的实现方法Android
编程绘制圆形图片的方法Android编程实现扭曲图像的绘制功能示例
0