网上搜了很多,都要使用Canvas,这个绝对是绕远了……
经实验,图片裁切只要一句就可以 ,下面是我写的一个按正方形区域裁剪的方法
/**
* 按正方形裁切图片
*/
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 );
}
参考http://stackoverflow.com/questions/3846338/how-to-crop-an-image-in-android
本文转自Kai的世界,道法自然博客园博客,原文链接:http://www.cnblogs.com/kaima/archive/2011/08/02/2124914.html,如需转载请自行联系原作者。