2013-02-28 3 views
2

Dans mon application, j'utilise l'appareil photo pour prendre des photos. Je
utiliser ce code pour démarrer l'appareil photo Activité:Comment puis-je modifier une photo prise avec l'appareil photo dans mon application?

Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
timeStamp = new SimpleDateFormat("yyyyMMddHHmmss").format(new Date()); 
File file = new File(directory, timeStamp+".png"); //name 
Uri outputFileUri1 = Uri.fromFile(file); 
intent.putExtra(MediaStore.EXTRA_OUTPUT, outputFileUri1); 
startActivityForResult(intent, CAMERA_RESULT); 

Ce code fonctionne, mais comment puis-je modifier l'image d'aperçu (recadrer, faire pivoter, ...) avant mon activité principale obtient les données onActivityResult() ?
Ou comment puis-je démarrer l'éditeur de photos pour mon image à partir de mon application?

Répondre

1

Vous devez créer un objet Bitmap à partir de votre image, puis vous pouvez le manipuler.

String fooFile = "PATH TO FILE"; 
Bitmap bmp = BitmapFactory.decodeFile(fooFile); 

est un recadrage example. Pour plus d'exemples, juste Google pour 'Bitmap manipulation android'

+0

Oh, non ... Voici un exemple d'algorithme d'une partie de mon application: 1) l'utilisateur démarre l'activité de la caméra; 2) L'utilisateur appuie sur le bouton pour prendre une photo; 3) L'utilisateur confirme la photo (clique sur "vérifier") 4) programme obtient des données dans onActivityResult, où créer un objet Bitmap et charger l'image dans ImageView. Mais je veux entre les points "2)" et "3)" l'utilisateur peut modifier la photo (par exemple, recadrer la photo) et après la confirmation de l'activité principale obtenir une photo recadrée. – JIyrApy

+0

Je vais devoir implémenter votre propre activité de caméra, qui se connectera à la caméra et traitera les données en fonction des interactions des utilisateurs –

Questions connexes