Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/118.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/facebook/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 储存在手机应用程序中的Swift图像正在旋转90度或180度_Ios_Swift_Uiimage - Fatal编程技术网

Ios 储存在手机应用程序中的Swift图像正在旋转90度或180度

Ios 储存在手机应用程序中的Swift图像正在旋转90度或180度,ios,swift,uiimage,Ios,Swift,Uiimage,在swift 3.2应用程序中,我允许用户拍照或从手机库中选择一张 我在应用程序中显示图像,图像的右侧朝上。我使用UIImagePNGRepresentation方法将png转换为数据,从而将图像保存到目录中 在检索图像时,将其倒置。 据我所知,我没有在任何地方旋转图像。我也遇到过同样的问题。我脑海中闪现的唯一修复方法是检查图像的方向是否垂直。如果它不是直立的,我们需要从图形上下文中获得正确的图像 您可以编写扩展来修复图像方向,如下所示:源: 然后调用该方法,一旦你从相机的照片 chosenI

在swift 3.2应用程序中,我允许用户拍照或从手机库中选择一张

我在应用程序中显示图像,图像的右侧朝上。我使用UIImagePNGRepresentation方法将png转换为数据,从而将图像保存到目录中

在检索图像时,将其倒置。
据我所知,我没有在任何地方旋转图像。

我也遇到过同样的问题。我脑海中闪现的唯一修复方法是检查图像的方向是否垂直。如果它不是直立的,我们需要从图形上下文中获得正确的图像

您可以编写扩展来修复图像方向,如下所示:源:

然后调用该方法,一旦你从相机的照片

 chosenImage = chosenImage.fixOrientation()

移动电话将相机拍摄的图像保存在与CCD传感器返回图像数据的方式相对应的方向上,以使他们的生活更轻松。它可以追溯到手机没有足够的内存来旋转图像的时候。此外,它们还保存有关图像保存方向的元信息,以便正确显示

我不知道你如何在你的应用程序中显示图像,但显然你使用的代码知道这一点

在使用UIImagePNGRepresentation之前,您必须修复图像的旋转。Rikesh Subedi的代码应该可以工作。但是关于StackOverflow还有很多


或者,您可以将其另存为JPEG格式。与PNG不同,JPEG支持用于存储图像方向的元信息。

当我在Mac上使用模拟器运行sam代码时,选择5个默认图像中的一个,效果很好。如果能显示您当前使用的代码,那就太好了。这就是当有人问你尝试过什么时的意思。
 chosenImage = chosenImage.fixOrientation()