【问题标题】:PhoneGap camera getPictue - get full image qualityPhoneGap 相机 getPictue - 获得完整的图像质量
【发布时间】:2014-09-19 16:48:20
【问题描述】:

我正在制作一个应用程序,其中拍摄照片并将其发送到服务器,但发送的文件质量较低。似乎当我使用 iOS 原生相机应用程序拍摄照片时,它会呈现出非常清晰的照片,但是当使用 PhoneGap 时,它会大大降低质量。

我已将图像质量设置为 100 等:

function capturePhoto() {
// Take picture using device camera and retrieve image as base64-encoded string
navigator.camera.getPicture(onPhotoURISuccess, onPhotoURIFail, { 
    quality: 100, 
    destinationType: Camera.DestinationType.FILE_URI,
    //destinationType: Camera.DestinationType.DATA_URL,
    //destinationType: Camera.DestinationType.NATIVE_URI,
    sourceType : Camera.PictureSourceType.CAMERA, 
    correctOrientation: true,
    saveToPhotoAlbum: true,
    encodingType: Camera.EncodingType.PNG
});

}

但似乎仍然给出了真正模糊的图像。

还有其他人遇到过这个问题吗?我也尝试使用 DATA_URL 来获取 base64 编码的图像,但这会使应用程序运行得非常慢,以至于我无法到达发送到服务器的阶段。

有没有办法使用原始的 LOSSLESS 文件?

谢谢

【问题讨论】:

    标签: image cordova camera


    【解决方案1】:
    function capturePhoto() {
    
                navigator.camera.getPicture(onPhotoURISuccess, onPhotoURIFail, { 
                    quality: 50, 
                    destinationType: Camera.DestinationType.FILE_URI,
                    sourceType : Camera.PictureSourceType.CAMERA, 
                    correctOrientation: false,
                    encodingType: Camera.EncodingType.PNG,
                    targetWidth: 1500,
                    targetHeight: 1500
    
                });
    }
    

    我不知道为什么我的以前不能工作,但可能是因为我在 iPad 上尝试过?我不太记得当时我的 iPhone 是否也有同样的问题。

    此外,检索 imageURI 的方式可能有所不同,对此也不确定,但这是我获取图像 URI 的代码:

    function onPhotoURISuccess(imageURI){
    
        $('#imagePreview img.smallImage').attr("src", imageURI); 
    
    
    }
    

    然后在您要发送时从图像中获取 URI。它与所有示例非常相似,但由于某种原因之前无法正常工作。

    确保您的插件也使用最新版本。就是这样!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-01-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多