2012-10-03 25 views
6

Solo puedo encontrar información en sus documentos sobre el Acelerómetro para devolver la orientación del dispositivo. ¿Hay alguna forma de teléfono que pueda devolver la forma en que se sostenía el dispositivo cuando se tomó una foto? Para utilizar la cámara, hago esto:Orientación de la orientación de retorno del teléfono durante la captura de imágenes

function capturePhoto() { 
    // Take picture using device camera and retrieve image as base64-encoded string 
    navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50, 
     destinationType: destinationType.DATA_URL }); 
} 

Cuando vuelve exitosa, lo hace.

function onPhotoDataSuccess(imageData) { 
     var baseImg = imageData; 
     $('#uploadPreUpImgSwapHtml').html('<img src="data:image/jpeg;base64,'+ baseImg +'" style="max-width:100%; width:auto; max-height:300px; height:auto;"/>'); 
     $('#uploadPreBaseDataSwapHtml').html('<input type="hidden" id="chosenPictureData" value="'+ baseImg +'" />'); 
     $('#uploadPictureBtnHideHtml').fadeIn(); 

    } 

¿Existe una devolución de llamada al éxito que devuelve lo que forma el dispositivo se encontraba detenido, mientras que se tomó la imagen para que pueda enviarlo al archivo de carga y girar la imagen correctamente?

Respuesta

23

para hacer su vida más fácil que sólo puede llamar a:

navigator.camera.getPicture(onPhotoDataSuccess, onFail, { quality: 50, 
    destinationType: destinationType.FILE_URI, 
    correctOrientation: true }); 

entonces obtendrá un archivo que se hace girar correctamente.

+2

Ohh wow !! ¡Esto funcionó espléndido! Muchas gracias! No vi eso en los documentos y cuando busqué en Google la respuesta, y encontré esta http://stackoverflow.com/questions/9902797/phone-gap-camera-orientation dijeron que la única razón por la que sucedía era porque yo estaba usando base64 y esos datos no se pasan junto con base64. – user1053263

+0

¡Muchas gracias! Esto resolvió mi problema en Samsung-Devices donde siempre obtuve una imagen en orientación horizontal (aunque el dispositivo estaba en orientación potrait) – Stradivari

+0

Excelente, voy a probar esta noche en un proyecto en el que estoy trabajando, ¡espero que funcione! – Mike

Cuestiones relacionadas