studio recortar programacion profesionalmente gratis google fotos editar como celular android

recortar - manual de programacion android pdf



Recortar una imagen cuando se selecciona de la galerĂ­a en Android (5)

Aunque forma parte de la API interna, com.android.camera.action.CROP parece estar bien soportado en la mayoría de los dispositivos Android. Esto podría comenzar:

final Intent intent = new Intent("com.android.camera.action.CROP"); intent.setData(uriOfImageToCrop); intent.putExtra("outputX", 400); intent.putExtra("outputY", 400); intent.putExtra("aspectX", 1); intent.putExtra("aspectY", 1); intent.putExtra("scale", true); intent.putExtra("noFaceDetection", true); intent.putExtra("output", Uri.fromFile(someOutputFile)); startActivityForResult(intent, SOME_RANDOM_REQUEST_CODE);

Luego maneje lo que necesita hacer en el método onActivityResult() de su Activity . Su archivo de salida debe ser la imagen recortada.

Sin embargo, dado que esta acción de Intent es parte de la API interna, le recomendaría encarecidamente que tenga algún tipo de comportamiento alternativo si algún dispositivo no es compatible con el Intent . Algunos fabricantes proporcionan sus propias aplicaciones de la Galería y, por lo tanto, no hay forma de saber si el dispositivo del usuario reconocerá o no la Intent . ¡POR FAVOR NO OLVIDES ESTO! :)

Quiero recortar una imagen en mi aplicación cuando se selecciona de la galería. es decir, si abro la galería y selecciono una imagen, la ventana de recorte debería aparecer cuando seleccionamos una imagen de iPhone. ¿Es posible en Android.

Encontré un tutorial para recortar la imagen en Android, pero no parece lo que quería.

http://www.coderzheaven.com/2011/03/15/crop-an-image-in-android/


Este tutorial es exactamente lo que necesitas disfrutar:

Escogiendo la imagen de la galería:

Recortar imagen después de la acción de selección Intención

Aclamaciones


Resolví este problema de esta manera

private void pickUserImage() { if (doHavePermission()) { Intent photoPickerIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); photoPickerIntent.setType("image/*"); photoPickerIntent.putExtra("crop", "true"); photoPickerIntent.putExtra("scale", true); photoPickerIntent.putExtra("outputX", 256); photoPickerIntent.putExtra("outputY", 256); photoPickerIntent.putExtra("aspectX", 1); photoPickerIntent.putExtra("aspectY", 1); photoPickerIntent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString()); photoPickerIntent.putExtra(MediaStore.EXTRA_OUTPUT, getTempUri()); startActivityForResult(photoPickerIntent, PICK_FROM_GALLERY); } }

Encuentra mi solución completa here en post


Ya puede indicar a la cámara / la intención de la galería que inicie el editor de recorte después de seleccionar / tomar la imagen:

Seleccionar imagen de la galería:

Intent pickImageIntent = new Intent(Intent.ACTION_PICK, android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); pickImageIntent.setType("image/*"); pickImageIntent.putExtra("crop", "true"); pickImageIntent.putExtra("outputX", 200); pickImageIntent.putExtra("outputY", 200); pickImageIntent.putExtra("aspectX", 1); pickImageIntent.putExtra("aspectY", 1); pickImageIntent.putExtra("scale", true); pickImageIntent.putExtra(MediaStore.EXTRA_OUTPUT, uriWhereToStore); pickImageIntent.putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString()); startActivityForResult(pickImageIntent, RESULT_LOAD_IMAGE);

Tomar foto:

Intent takePicIntent = new Intent("android.media.action.IMAGE_CAPTURE"); takePicIntent .putExtra("crop", "true"); takePicIntent .putExtra("outputX", 200); takePicIntent .putExtra("outputY", 200); takePicIntent .putExtra("aspectX", 1); takePicIntent .putExtra("aspectY", 1); takePicIntent .putExtra("scale", true); takePicIntent .putExtra(MediaStore.EXTRA_OUTPUT, uriWhereToStore); takePicIntent .putExtra("outputFormat", Bitmap.CompressFormat.JPEG.toString()); startActivityForResult(takePicIntent , RESULT_LOAD_IMAGE);


Sí, es posible recortar la imagen en Android usando com.android.camera.action.CROP . después de seleccionar la URL de la imagen en la galería, iniciará Crop Editor como:

Intent intent = new Intent("com.android.camera.action.CROP"); intent.setClassName("com.android.camera", "com.android.camera.CropImage"); File file = new File(filePath); Uri uri = Uri.fromFile(file); intent.setData(uri); intent.putExtra("crop", "true"); intent.putExtra("aspectX", 1); intent.putExtra("aspectY", 1); intent.putExtra("outputX", 96); intent.putExtra("outputY", 96); intent.putExtra("noFaceDetection", true); intent.putExtra("return-data", true); startActivityForResult(intent, REQUEST_CROP_ICON);

Cuando se selecciona la imagen, se seleccionará el retorno de la actividad para guardar el contenido.

Bundle extras = data.getExtras(); if(extras != null ) { Bitmap photo = extras.getParcelable("data"); ByteArrayOutputStream stream = new ByteArrayOutputStream(); photo.compress(Bitmap.CompressFormat.JPEG, 75, stream); // The stream to write to a file or directly using the photo }

y vea esta publicación, que también le ayudará a recortar la imagen en Android