Android - Image Crop - Crop ảnh trong Android Studio

1. Sử dụng thư viện ngoài, cần thêm dependency sau trong build.gradle

compile 'com.isseiaoki:simplecropview:1.1.4'

2. Trong xml file thêm thẻ sau

<com.isseiaoki.simplecropview.CropImageView 
xmlns:custom="http://schemas.android.com/apk/res-auto"    
android:id="@+id/cropImageView"    
android:layout_width="match_parent"    
android:layout_height="match_parent"    
custom:scv_crop_mode="square"    
custom:scv_frame_color="@color/colorAccent"    
custom:scv_frame_stroke_weight="1dp"    
custom:scv_guide_color="@color/colorAccent"    
custom:scv_guide_show_mode="show_on_touch"    
custom:scv_guide_stroke_weight="1dp"    
custom:scv_handle_color="@color/colorAccent"    
custom:scv_handle_show_mode="show_always"    
custom:scv_handle_size="12dp"    
custom:scv_min_frame_size="@dimen/_100sdp"    
custom:scv_touch_padding="8dp" />

Chú ý:
- crop_mode: chọn kiểu khung ảnh được cắt: vuông, 16:9,...
- ....
3. Trong Activity

private CropImageView mCropView;
private Uri sourceUri;

mCropView = (CropImageView) findViewById(cropImageView);
mCropView.setOutputHeight(512);mCropView.setCompressFormat(Bitmap.CompressFormat.PNG);

mCropView.startLoad(
        sourceUri,
        new LoadCallback() {
            @Override            
            public void onSuccess() {
              
            }

            @Override            
            public void onError() {
                
            }
        });

mCropView.startCrop(sourceUri, new CropCallback() {
    @Override    public void onSuccess(Bitmap cropped) {
    }

    @Override    public void onError() {
        
    }
}, new SaveCallback() {
    @Override    public void onSuccess(Uri outputUri) {
      
    }

    @Override    public void onError() {
        
    }
});


Chú ý: sourceUri là Uri chứa đường dẫn của ảnh, không được null 
--> phải yêu cầu permission đọc/ghi dữ liệu

Có 3 bước : Khởi tạo --> load ảnh --> crop ảnh


Nhận xét

Bài đăng phổ biến từ blog này

Android - Date Time - Lấy giá trị ngày, giờ theo định dạng tùy biến trong Android Studio

Android - Image - Take Photo, Choose Photo from Gallery - Xử lý chụp ảnh, lấy ảnh trong Android Studio

Android - Circle Image - Tạo ảnh bo tròn trong Android Studio