一般开发时,我们会调用安卓系统自带的图片裁剪工具裁剪图片,不过谷歌官方提供的裁剪返回图片分辨率只有160*160,图片失真严重,坑爹之处不言而喻。而且调用"com.android.camera.action.CROP"裁剪图片,并不提供分辨率设置。
后来,朋友推荐给我一个github上的androidstudio 自定义裁剪控件源码,经过自己移植到eclipse上,测试发现方便使用,这里直接把源码的链接给大家,可以自己下载使用。
http://download.csdn.net/detail/w2180z/8268333
一下是部分源码分析:
源码中通过两个自定义View(上传的资源中有部分冗杂源码,删除后重新组织import即可,不删除也不会影响使用)实现图片裁剪,CropOverlayView图片裁剪的蒙版覆盖物View,CropImageView实现图片裁剪的最终功能。
CropImageView效果:
使用 setImageBitmap(Bitmap bitmap) -void 方法设置裁剪的图片,拖动裁剪大小后调用getCroppedImage() -Bitmap方法获得裁剪后图像的bitmap。