图片的缩放、旋转和平移
2016-04-02 11:22
99 查看
1、视图
2、代码
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" tools:context=".MainActivity" > <ImageView android:id="@+id/iv_1" android:layout_width="wrap_content" android:layout_height="wrap_content" /> <ImageView android:id="@+id/iv_2" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>
2、代码
package com.example.imageresize; import android.os.Bundle; import android.app.Activity; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Matrix; import android.graphics.Paint; import android.view.Menu; import android.widget.ImageView; 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 bitmap1 = BitmapFactory.decodeResource(getResources(), R.drawable.ic_launcher); iv_1.setImageBitmap(bitmap1); Bitmap alterBitmap = Bitmap.createBitmap(bitmap1.getWidth() + 10, bitmap1.getHeight() + 10, bitmap1.getConfig()); Canvas canvas = new Canvas(alterBitmap); Paint paint = new Paint(); paint.setColor(Color.BLACK); Matrix matrix = new Matrix(); /***************图片缩放代码start******************/ //注意x轴和y轴的缩放 /* matrix.setValues(new float[]{ 2.0f,0,1, 0,1,0, 0,0,1 });*/ //matrix.setScale(2.0f, 1); /***************图片缩放代码end******************/ //matrix.setRotate(180, bitmap1.getWidth()/2, bitmap1.getHeight()/2); //matrix.setRotate(15); /***********镜子效果start*************/ matrix.setScale(-1, 1); matrix.postTranslate(bitmap1.getWidth(), 0);//这样设置就是平移 /***********镜子效果end*************/ //matrix.setTranslate(10, 10);//x和y轴移动10个像素 //以bitmap1为模板画进画布中 canvas.drawBitmap(bitmap1, matrix, paint); iv_2.setImageBitmap(alterBitmap); } }
相关文章推荐
- named学习笔记
- mysql数据库 DB类
- 遗传算法入门(连载之五)
- eclipse 测试java项目基础
- 机房重构之泛型的使用
- 5-19 支票面额 (15分)
- 1473 出栈顺序的判定
- OA总结
- Linux简单设备驱动(1):使用IO内存操作GPIO--LED
- Android MTK 去掉Camera相机中的前后置切换
- matlab之simulink仿真入门
- DrawableContainer
- laytpl JavaScript模板引擎使用
- Hang Detect 问题分析案例
- sublime常用功能
- Struts2版本升级到struts2 2.3.15.1操作说明
- 介绍linux设备驱动编程
- OGNL表达式与EL表达式区别
- 遗传算法入门(连载之四)
- Android-UI布局1