图片处理在程序开发中也是经常用到的,手机上面经常就有图片浏览器,能将图片放大显示也能将图片显示为缩略图,同时也可以将图片竖着看或者横着看。这些都需要对图片进行处理,让其能够缩放和旋转。因此如题所示,来看看在Android中图片如何缩放和旋转。
Matrix是在Android中用于操作图像的类,以下我们通过例子来看看Matrix中用于实现图片缩放和旋转的两个方法使用。
1、首先加载要操作的图片
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ataaw);
2、得到以上加载图片的高度跟宽度
int height = bitmap.getHeight();
int width = bitmap.getWidth();
3、定义要缩放成最终的图片高度跟宽度
int nHeight = 150;
int nWidth = 180;
4、计算缩放比例
float scaleWidth = ((float) nWidth)/width;
float scaleHeight = ((float) nHeight)/height;
5、创建Matrix对象
Matrix matrix = new Matrix();
6、使用Matrix对象跟缩放比例实现缩放图片
matrix.postScale(scaleWidth, scaleHeight);
7、生成缩放后的图片
Bitmap resizedBitmap = Bitmap.createBitmap(bitmap, 0, 0,width, height, matrix, true);
同样的,图片旋转只需要通过Matrix改变图片角度即可,生成图片跟7相同。
matrix.postRotate(60);
通过以上生成新的图片后即可将新生成的图片显示到对应的控件中。