繁体   English   中英

在离子框架和cordova-plugin-camera中,使用相机拍摄的照片在应用程序中逆时针旋转90度

[英]In ionic framework & cordova-plugin-camera pictures taken with camera are being rotated 90 degrees anti clockwise in app

我正在为我的混合应用程序开发Ionic框架,并使用Cordova,但在ios和android中用相机拍摄的照片都遇到了问题。 使用设备相机以人像模式拍摄照片时,其方向会自动更改。 这个问题既存在于移动应用程序(iOS和android)中,也存在于网络应用程序(Safari和Chrome)中。 我在应用程序中使用了cordova-plugin-camera,这是插件ios代码中UIImage + CropScaleOrientation.m文件中的代码,其中ios正在进行旋转

(UIImage*)imageCorrectedForCaptureOrientation:(UIImageOrientation)imageOrientation
    {
        float rotation_radians = 0;
        bool perpendicular = false;

        switch (imageOrientation) {
            case UIImageOrientationUp :
                rotation_radians = 0.0;
                break;

            case UIImageOrientationDown:
                rotation_radians = M_PI; // don't be scared of radians, if you're reading this, you're good at math
                break;

            case UIImageOrientationRight:
                rotation_radians = M_PI_2;
                perpendicular = true;
                break;

            case UIImageOrientationLeft:
                rotation_radians = -M_PI_2;
                perpendicular = true;
                break;

            default:
                break;
        }
     }

这就是我用设备相机捕获图像的方式

并且选择(捕获)后,它会更改其方向,并且在webview中也会在chrome(android)和safari(iphone)中改变图片的方向

这是我的第一个堆栈溢出问题,请原谅我的错误,在此先感谢。

要在iOS上修复它:

    navigator.camera.getPicture(onSuccess, onFail, { 
        quality: 75,
        destinationType: Camera.DestinationType.DATA_URL,
        correctOrientation: true,
        saveToPhotoAlbum: true
    });

correctOrientation: true指令是关键。 希望有帮助!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM