码迷,mamicode.com
首页 > 移动开发 > 详细

Android bitmap的拷贝以及平移旋转缩放等效果

时间:2015-08-31 13:36:23      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:bitmap 平移   旋转   缩放   

package com.example.bitmap;


import android.app.Activity;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Matrix;
import android.graphics.Paint;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;


public class MainActivity extends Activity {
private ImageView iv1;
private ImageView iv2;
private Bitmap srcBitmap;
private Bitmap alterBitmap;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
iv1=(ImageView) findViewById(R.id.iv1);
iv2=(ImageView) findViewById(R.id.iv2);
//1.给v1设置一个位图
srcBitmap=BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher);
iv1.setImageBitmap(srcBitmap);

//2.创建一个空白的位图
alterBitmap=Bitmap.createBitmap(srcBitmap.getWidth()*3, srcBitmap.getHeight(), srcBitmap.getConfig());
}

public void click(View view){
//1.把空白的位图给了画板  准备画画
Canvas canvas=new Canvas(alterBitmap);
//2.设置画笔
Paint paint=new Paint();
paint.setAntiAlias(true);  //消除锯齿
//3.画位图

Matrix m=new Matrix();
//1.设置缩放的比例
//m.setScale(1.0f, 2.0f);
//2.指定圆心的旋转90度
//m.setRotate(90,srcBitmap.getWidth()/2,srcBitmap.getHeight()/2);
//3.镜子效果
/*m.setScale(-1.0f, 1.0f);//先镜子到y轴的左侧
m.postTranslate(srcBitmap.getWidth(), 0);//然后在向右平移到屏幕上
        */
//4.倒影效果
/*m.setScale(1.0f, -1.0f);//线倒影要图片的下面  
m.postTranslate(0, srcBitmap.getHeight());//然后向上平移到原来的位置*/
//5.平移效果  
   m.setTranslate(100,20);
canvas.drawBitmap(srcBitmap,m, paint);
iv2.setImageBitmap(alterBitmap);
}
}

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android bitmap的拷贝以及平移旋转缩放等效果

标签:bitmap 平移   旋转   缩放   

原文地址:http://blog.csdn.net/hshshshshs1/article/details/48132375

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!