这就是我需要的:
我有一个Surface视图,它上面有一个正方形(图像视图)。我需要拍摄一张图像,然后裁剪出仅在广场内可见的区域。
此代码为我提供了不错的结果,但仅针对某些设备:
int width=(int)(bitmap.getWidth()*60/100);
int height=(bitmap.getHeight()*100/100); //dont change
bitmap=Bitmap.createBitmap(bitmap,150,0, width-55, height);
有什么办法可以概括这段代码吗?有没有其他方法可以得到我需要的东西?
编辑:这就是我开始工作的方式 -
在函数中使用此代码,并在单击图像后调用它
//bitmap is the object where the image is stored
int width = bitmap.getWidth();
int height = bitmap.getHeight();
int left;
if(width > height){
left = (width - height)/2;
}
else {
left = (height - width)/2;
}
bitmap=Bitmap.createBitmap(bitmap,left,0, height, height);