网上搜了很多,都要使用Canvas,这个绝对是绕远了……
经实验,图片裁切只要一句就可以 ,下面是我写的一个按正方形区域裁剪的方法
/**
参考
http://stackoverflow.com/questions/3846338/how-to-crop-an-image-in-android
* 按正方形裁切图片
*/
public static Bitmap ImageCrop(Bitmap bitmap) {
int w = bitmap.getWidth(); // 得到图片的宽,高
int h = bitmap.getHeight();
int wh = w > h ? h : w; // 裁切后所取的正方形区域边长
int retX = w > h ? (w - h) / 2 : 0 ; //基于原图,取 正方形左上角x坐标
int retY = w > h ? 0 : (h - w) / 2 ;
// 下面这句是关键
return Bitmap.createBitmap(bitmap, retX, retY, wh, wh, null , false );
}
*/
public static Bitmap ImageCrop(Bitmap bitmap) {
int w = bitmap.getWidth(); // 得到图片的宽,高
int h = bitmap.getHeight();
int wh = w > h ? h : w; // 裁切后所取的正方形区域边长
int retX = w > h ? (w - h) / 2 : 0 ; //基于原图,取 正方形左上角x坐标
int retY = w > h ? 0 : (h - w) / 2 ;
// 下面这句是关键
return Bitmap.createBitmap(bitmap, retX, retY, wh, wh, null , false );
}
本博客所有随笔,若未明确标示为转载或未带有原文链接,皆为原创。
本博客所有随笔版权归博客园和kai.ma所有,欢迎转载,转载请保留:
本博客所有随笔版权归博客园和kai.ma所有,欢迎转载,转载请保留:
- 出处:http://kaima.cnblogs.com
- 作者:kai.ma