2016-01-21 2 views
1

Как создать инструмент для обрезки изображений, например, инструмент для обрезания изображений приложения Google для фотографий? Я искал везде, но не нашел никакой библиотеки или кода, который работает как приложение для обрезания фотографий Google.Инструмент обрезки изображения Google Фото

Я имею в виду эту функциональность этого приложения. Я нашел много библиотек, но проблема в том, что, когда я добавляю seekBar для поворота изображения, это вращающийся вид отверстия (изображение и кадр обрезки), я хочу, чтобы рамка обрезки не вращалась.

Я попытался это библиотекой https://android-arsenal.com/tag/45

enter image description here

вот мой вращающийся код, и это библиотека https://github.com/jdamcd/android-crop

private void rotateClick(){ 
    seekBar.setOnSeekBarChangeListener(new SeekBar.OnSeekBarChangeListener() { 
     @Override 
     public void onProgressChanged(SeekBar seekBar, int progress, boolean fromUser) { 
      imageView.setRotation(progress) 
     } 

     @Override 
     public void onStartTrackingTouch(SeekBar seekBar) { 

     } 

     @Override 
     public void onStopTrackingTouch(SeekBar seekBar) { 

     } 
    }); 
} 

и XML

<SeekBar 
    android:id="@+id/seekBar" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" /> 

<com.soundcloud.android.crop.CropImageView 
    android:layout_marginTop="20dp" 
    android:id="@+id/crop_image" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:scaleType="center" 
    android:adjustViewBounds="true" 
    android:layout_below="@id/done_cancel_bar" /> 

ответ

0

Вы можете использовать этот метод обрезать изображение. Надеюсь, это поможет вам.

public static void copyFile(File src, File dst) { 
    try { 
     dst.createNewFile(); 
     FileInputStream inStream = new FileInputStream(src); 
     FileOutputStream outStream = new FileOutputStream(dst); 
     FileChannel inChannel = inStream.getChannel(); 
     FileChannel outChannel = outStream.getChannel(); 
     inChannel.transferTo(0, inChannel.size(), outChannel); 
     inStream.close(); 
     outStream.close(); 
    }catch (IOException e) { 
     Log.e("copy", "failed copy"); 
    } 
} 
+0

Я кадрирование функциональность. Моя единственная проблема заключается в том, что когда я поворачиваю изображение, рамка обрезки также вращалась –

Смежные вопросы