在不使用裁剪意图的情况下在android中裁剪图像

时间:2014-06-04 21:45:03

标签: android crop

我正在尝试开发一个小型裁剪应用程序。我将像在通常的条形码扫描仪中一样在相机窗口上使用叠加。但我想在用户点击图片后裁剪图像的叠加部分,然后只存储非叠加部分。我尝试了原生裁剪功能,但它告诉用户选择裁剪部分。我想直接裁剪照片并将其保存在图库中。我怎么能实现这个?

现在我使用以下代码进行裁剪....

private void performCrop() {
        // TODO Auto-generated method stub
        //call the standard crop action intent (the user device may not support it)
        Intent cropIntent = new Intent("com.android.camera.action.CROP"); 
            //indicate image type and Uri
        cropIntent.setDataAndType(picUri, "image/*");
            //set crop properties
        cropIntent.putExtra("crop", "true");
            //indicate aspect of desired crop
        cropIntent.putExtra("aspectX", 1);
        cropIntent.putExtra("aspectY", 1);
            //indicate output X and Y
        cropIntent.putExtra("outputX", 256);
        cropIntent.putExtra("outputY", 256);
            //retrieve data on return
        cropIntent.putExtra("return-data", true);
            //start the activity - we handle returning in onActivityResult
        startActivityForResult(cropIntent,AppUtils.PIC_CROP);
}

1 个答案:

答案 0 :(得分:0)

我假设您的原始图片有Bitmap个实例。在这种情况下,只需使用Bitmap.createBitmap()选择您需要的区域。

Bitmap cropped = Bitmap.createBitmap(bitmap, left, top, width, height);