图片处理

Android中提供了Bitmap和BitmapFactory对象,可以读取存储卡或者手机系统里的图片。BitmapFactory可以将图片文件转换成Bitmap对象。
1. decodeFile(String pathName)将手机文件系统中的图片转为Bitmap对象
2. decodeResource(Resources res, int id)将/res/drawable内图片文件转为Bitmap对象
3. decodeStream(InputStream is)将InputStream转为Bitmap对象
当然还有很多方法,这里不一一列举,大家可以查看一下API。
因为在Android中不允许ImageView在产生后,动态修改其长度与宽度,所以在实现图片放到缩小功能的时候,我们要将原来Layout中的ImageView三处,重新生成一个ImageView,指定图片给它后,再放入layout中。用户看来就好像同一张图片在放大或缩小了。在放大或者缩小的图片时,我们要用到一个Matrix对象,除了缩放图片外,还可以做旋转效果。
缩放图片key code:
float scaleWidth, scaleHeight = 1;
int bitmapWidth = bitmap.getWidth();
int bitmapHeight = bitmap.getHeight();
// 设置图片缩放比例(<1缩小,>1放到)
double scale = 0.8
scaleWidth = (float)(scaleWidth);
scaleHeight = (float)(scaleHeight);
// 产生resize后的Bitmap对象
Matrix matrix = new Matrix();
matrix.postScale(scaleWidth,scaleHeight);
Bitmap resizeBitmap = Bitmap.createBitmap(bitmap,0,0,bitmapWidth,bitmapHeight,matrix,true);

图片旋转key code:
int scaleAngle = 1;
Matrix matrix = new Matrix();
//向左旋转10°
matrix.setRotate(10 * scaleAngle);
Bitmap resizeBitmap = Bitmap.createBitmap(bitmap,0,0,bitmapWidth,bitmapHeight,matrix,true);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值