曾遇到这样的一个问题,  自己上传到服务器的图片, 在请求回来莫名奇妙的就会颠倒了

解决办法只需要, 在图片上传之前, 做一下处理就可以了

//图片处理,此方法解决了, (手机竖屏拍照,图片会横倒的问题)

- (UIImage *)fixOrientation:(UIImage *)aImage {

if (aImage.imageOrientation ==UIImageOrientationUp)

return aImage;

CGAffineTransform transform =CGAffineTransformIdentity;

switch (aImage.imageOrientation) {

case UIImageOrientationDown:

case UIImageOrientationDownMirrored:

transform = CGAffineTransformTranslate(transform, aImage.size.width, aImage.size.height);

transform = CGAffineTransformRotate(transform,M_PI);

break;

case UIImageOrientationLeft:

case UIImageOrientationLeftMirrored:

transform = CGAffineTransformTranslate(transform, aImage.size.width,0);

transform = CGAffineTransformRotate(transform,M_PI_2);

break;

case UIImageOrientationRight:

case UIImageOrientationRightMirrored:

transform = CGAffineTransformTranslate(transform,0, aImage.size.height);

transform = CGAffineTransformRotate(transform, -M_PI_2);

break;

default:

break;

}

switch (aImage.imageOrientation) {

case UIImageOrientationUpMirrored:

case UIImageOrientationDownMirrored:

transform = CGAffineTransformTranslate(transform, aImage.size.width,0);

transform = CGAffineTransformScale(transform, -1,1);

break;

case UIImageOrientationLeftMirrored:

case UIImageOrientationRightMirrored:

transform = CGAffineTransformTranslate(transform, aImage.size.height,0);

transform = CGAffineTransformScale(transform, -1,1);

break;

default:

break;

}

CGContextRef ctx =CGBitmapContextCreate(NULL, aImage.size.width, aImage.size.height,

CGImageGetBitsPerComponent(aImage.CGImage),0,

CGImageGetColorSpace(aImage.CGImage),

CGImageGetBitmapInfo(aImage.CGImage));

CGContextConcatCTM(ctx, transform);

switch (aImage.imageOrientation) {

case UIImageOrientationLeft:

case UIImageOrientationLeftMirrored:

case UIImageOrientationRight:

case UIImageOrientationRightMirrored:

// Grr...

CGContextDrawImage(ctx,CGRectMake(0,0,aImage.size.height,aImage.size.width), aImage.CGImage);

break;

default:

CGContextDrawImage(ctx,CGRectMake(0,0,aImage.size.width,aImage.size.height), aImage.CGImage);

break;

}

// And now we just create a new UIImage from the drawing context

CGImageRef cgimg =CGBitmapContextCreateImage(ctx);

UIImage *img = [UIImageimageWithCGImage:cgimg];

CGContextRelease(ctx);

CGImageRelease(cgimg);

return img;

}

ios开发 上传图片颠倒问题相关推荐

  1. iOS开发-照片选择

    本来想做个注册登录的表单的,想想还是先做个简单的头像选择,一般情况下不管是内部管理系统还是面向公众的互联网公司,注册登录是免不了的,用户头像上传是免不了的,尤其是企业用户,上传了自己的图片才感觉自己买 ...

  2. (0096)iOS开发之应用间的分享系列(1)

    分享系列: (1)应用间的分享概要 (2) Share Extension将应用添加到系统分享列表 (3) 在自己的应用中调起系统分享面板分享到面板上的其他应用中 (0097)iOS开发之应用间的分享 ...

  3. iOS开发tips总结

    tip 1 :  给UIImage添加毛玻璃效果 func blurImage(value:NSNumber) -> UIImage { let context = CIContext(opti ...

  4. iOS开发UI篇—Quartz2D简单使用(二)

    iOS开发UI篇-Quartz2D简单使用(二) 一.画文字 代码: // // YYtextview.m // 04-写文字 // // Created by 孔医己 on 14-6-10. // ...

  5. iOS开发——高级篇——线程同步、线程依赖、线程组

    前言 对于iOS开发中的网络请求模块,AFNet的使用应该是最熟悉不过了,但你是否把握了网络请求正确的完成时机?本篇文章涉及线程同步.线程依赖.线程组等专用名词的含义,若对上述名词认识模糊,可先进行查 ...

  6. iOS开发UI篇—常见的项目文件介绍

    iOS开发UI篇-常见的项目文件介绍 一.项目文件结构示意图 二.文件介绍 1.products文件夹:主要用于mac电脑开发的可执行文件,ios开发用不到这个文件 2.frameworks文件夹主要 ...

  7. iOS开发常用之博客

    开发博客列表 唐巧整理 - 猿题库唐巧整理. 11个超棒的iOS开发学习国外网站 - 11个超棒的iOS开发学习网站:objc.io ; subjc.com ; NSHipster ; 彼得斯坦伯格 ...

  8. iOS开发一路走来看到,好奇,好玩,学习的知识点记录

    AutoreleasePool http://blog.sunnyxx.com/2014/10/15/behind-autorelease/ http://blog.leichunfeng.com/b ...

  9. iOS开发小技巧总结

    tip 1 :  给UIImage添加毛玻璃效果 func blurImage(value:NSNumber) -> UIImage { let context = CIContext(opti ...

最新文章

  1. 关于python创建类的深入理解
  2. 如何有效地记录 Java SQL 日志(转)
  3. mssql sqlserver 对不同群组对象进行聚合计算的方法分享
  4. 活跃用户数怎么计算_不懂LTV,怎么做用户增长?详解用户生命周期价值计算方法...
  5. 往IOC 容器中添加组件的方式
  6. android span的用法,Android Span的使用
  7. Captcha插件后门分析和修复
  8. linux uwsgi 非root,nginx – 只能用root运行uwsgi
  9. ios 怎么判断字符串的字节数_iOS 计算字符串长度-boundingRectWithSize:
  10. Freemarker判断对象是否为空的用法
  11. 时间序列-BP神经网络及与auo arima的比较
  12. h5商城模板_几个常用H5制作软件、网站推荐
  13. js通过pako压缩数据后java解压数据
  14. 小程序与MySQL数据库的交互_微信小程序数据库交互如何做到?
  15. ACM第四站————最小生成树(普里姆算法)
  16. WPS如何并排放置两张图片_WPS表格:如何批量将所有图片大小修改成一致?
  17. OpenAI 宣布将对战 DOTA2 世界冠军 OG,最终决战! 1
  18. 多维度数据分析是什么?该怎么做?
  19. 目标既定 使命必达 | 麒麟信安举行营销中心2023年度工作计划部署会
  20. python 计算面积 比计算几何慢_计算几何相关 - osc_kbyywydz的个人空间 - OSCHINA - 中文开源技术交流社区...

热门文章

  1. js获取UEditor文本编辑器中的图片地址
  2. EAIDK-610 板卡目录
  3. 打印机(联网)连接无线网路,设置共享 mac
  4. UNION ALL 用法
  5. 保温杯哪种材质最好_保温杯的材质有哪几种?选购不锈钢保温杯有哪些技巧?...
  6. 县城及三四线城市做小程序代理加盟前景分析
  7. CC00212.CloudKubernetes——|KuberNetes高级调度.V15|——|Pod亲和力反亲和力.v03|pod反亲和力|
  8. 2021-2027全球及中国金属镀膜玻璃行业研究及十四五规划分析报告
  9. 状态栏、标题栏、导航栏的了解
  10. 电脑开机到滚动界面时蓝屏有0x000024 安全模式进不去