梦帆帆原创。。。
这两天做项目是要用到bitmap的镜像翻转,上网找了半天没有找到。于是,自己慢慢的调。
功夫不负有心人,总算是搞定了。。以下分享代码:
@Override
public void onDraw(Canvas canvas){
Matrix mx = new Matrix();
canvas.drawBitmap(bt, 50, 100, null);
mx.setScale(1, -1); //产生镜像
Bitmap btt;
btt = Bitmap.createBitmap(bt, 0, 0,
bt.getWidth(), bt.getHeight(), mx, true);
canvas.drawBitmap(btt, 50, 200, null);// 画镜像图
mx.setRotate(180); //旋转180度
Bitmap btt2 = Bitmap.createBitmap(btt, 0, 0,
btt.getWidth(), btt.getHeight(), mx, true);
canvas.drawBitmap(btt2, 150, 300, null); //获得镜像翻转图。
}
有一点,不明白,如果用
mx.setScale(1, -1);
mx.setRotate(180)
再接这画bitmap,就不能得到所要求的图片。
一定要分开才能实现。。。
尴尬不会上图。大家可以去我相册看看,最上边那条鱼就是bt,,左下角那条鱼就是btt,右下角的那条鱼就是btt2。
大家,也可以参考下http://hi.csdn.net/space-6525255-do-album-picid-763842.html。。