图片的操作
2015-07-10 11:07
288 查看
public class MainActivity extends Activity {
private ImageView iv_1;
private ImageView iv_2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
iv_1 = (ImageView) findViewById(R.id.iv_1);
iv_2 = (ImageView) findViewById(R.id.iv_2);
//导入图片资源,该图片是只读的
Bitmap map = BitmapFactory.decodeResource(getResources(),
R.drawable.gif);
iv_1.setImageBitmap(map);
//创建一个可修改的
Bitmap altermap = Bitmap.createBitmap(map.getWidth(),
map.getHeight(), map.getConfig());
//创建画布,绑定可修改的图版
Canvas canvas = new Canvas(altermap);
//对图片操作的矩阵
Matrix matrix = new Matrix();
//画笔
Paint paint = new Paint();
//图片的合成
//paint.setXfermode(new PorterDuffXfermode(android.graphics.PorterDuff.Mode.MULTIPLY));
paint.setColor(Color.BLACK);
// 图片的缩放
// matrix.setScale(2.0f, 1);
// 图片的旋转
// matrix.setRotate(180, map.getWidth()/2, map.getHeight()/2);
//图片的平移
//matrix.setTranslate(10, 10);
//镜面效果
// matrix.setScale(-1, 1);
// matrix.postTranslate(map.getWidth(), 0);
//倒影效果
matrix.setScale(1, -1);
matrix.postTranslate(0, map.getHeight());
canvas.drawBitmap(map, matrix, paint);
iv_2.setImageBitmap(altermap);
}
}
private ImageView iv_1;
private ImageView iv_2;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
iv_1 = (ImageView) findViewById(R.id.iv_1);
iv_2 = (ImageView) findViewById(R.id.iv_2);
//导入图片资源,该图片是只读的
Bitmap map = BitmapFactory.decodeResource(getResources(),
R.drawable.gif);
iv_1.setImageBitmap(map);
//创建一个可修改的
Bitmap altermap = Bitmap.createBitmap(map.getWidth(),
map.getHeight(), map.getConfig());
//创建画布,绑定可修改的图版
Canvas canvas = new Canvas(altermap);
//对图片操作的矩阵
Matrix matrix = new Matrix();
//画笔
Paint paint = new Paint();
//图片的合成
//paint.setXfermode(new PorterDuffXfermode(android.graphics.PorterDuff.Mode.MULTIPLY));
paint.setColor(Color.BLACK);
// 图片的缩放
// matrix.setScale(2.0f, 1);
// 图片的旋转
// matrix.setRotate(180, map.getWidth()/2, map.getHeight()/2);
//图片的平移
//matrix.setTranslate(10, 10);
//镜面效果
// matrix.setScale(-1, 1);
// matrix.postTranslate(map.getWidth(), 0);
//倒影效果
matrix.setScale(1, -1);
matrix.postTranslate(0, map.getHeight());
canvas.drawBitmap(map, matrix, paint);
iv_2.setImageBitmap(altermap);
}
}
相关文章推荐
- 3.传统线程互斥技术
- 实例分析用指针访问二维数组的几种方法
- 我的上半年“手相”-----“奔跑中的2015”
- android禁止界面横屏
- Guava 15新特性介绍
- 2.传统定时器技术回顾 - Timer类 TimerTask
- mongodb的基本操作
- 关于<img>标签无法显示名字中带有中文的图片的问题
- GRE写作必备句型
- 多维数组的指针类型转换和参数传递
- 要么忍,要么狠,要么滚
- 搜索引擎系列1:什么是正向索引?什么是倒排索引?
- 选项卡模式设计
- MyEclipse中Maven的配置
- 1.传统线程技术的回顾-JDK5多线程
- 【设计模式】动态代理Proxy_02
- 《算法4》中的堆排序
- 053第170题
- 关于 gitblite 配置的重点
- 安装Boost.Numpy