手机差距相机的方向

我开发了一个应用程序使用Phone Gap 0.9.3版本…

当我在我的应用程序中打开相机时,它总是以横向模式打开,在捕捉时,图像以横向格式返回…

我怎样才能改变相机的模式为肖像

navigator.camera.getPicture(onsuccess, fail, {quality: 45,destinationType : Camera.DestinationType.DATA_URL, sourceType: src},img_id); function onsuccess(imageData) { localStorage.setItem("image_captured","Yes"); $('#'+imgID).attr('src', 'data:image/jpeg;base64,' + imageData); $("#"+imgID+"_IMG").attr('src', 'data:image/jpeg;base64,' + imageData); } 

在清单中我提到:

 <activity android:name="com.android.camera.Camera" android:screenOrientation="portrait"> </activity> 

请帮我这个…

Solutions Collecting From Web of "手机差距相机的方向"

以base64格式返回图像时不存储照片方向(所有EXIF数据都被剥离)。

您应该使用加速度计或屏幕方向来“知道”图像是以纵向还是横向拍摄,然后相应显示。

试试这个:correctOrientation:true

 function getPhoto(source) { navigator.camera.getPicture(onPhotoURISuccess, onFail, { quality: 30, destinationType: destinationType.FILE_URI, sourceType: source, correctOrientation: true }); } 

“correctOrientation”参数适用于我,但只有在使用“targetWidth”和“targetHeight”参数(例如将它们设置为“800”)时才适用。 看起来有些设备可能没有足够的内存来旋转全分辨率的图片。

更新:这是一个很好的文章,内含有关Phonegap Camera代码的内存,缩放和EXIF问题的有用信息: http ://simonmacdonald.blogspot.ca/2012/07/change-to-camera-code-in-phonegap-190 。 HTML

我解决了我的问题,我保存为文件的URL而不是。 该文件将与正确的EXIF数据一起放置在临时文件夹中。 可能有一些设备在closures应用程序时必须手动删除文件。

当引用文件url而不是数据时,img似乎正确显示。