/**

* 截取当前屏幕 并修改

*

* @return NSData **/

- (UIImage *)imageWithScreenshot

{

CGSize imageSize=CGSizeZero;

UIInterfaceOrientation orientation=[UIApplication sharedApplication].statusBarOrientation;if(UIInterfaceOrientationIsPortrait(orientation))

imageSize=[UIScreen mainScreen].bounds.size;elseimageSize=CGSizeMake([UIScreen mainScreen].bounds.size.height, [UIScreen mainScreen].bounds.size.width);

UIGraphicsBeginImageContextWithOptions(imageSize, NO,0);

CGContextRef context=UIGraphicsGetCurrentContext();for (UIWindow *window in[[UIApplication sharedApplication] windows])

{

CGContextSaveGState(context);

CGContextTranslateCTM(context, window.center.x, window.center.y);

CGContextConcatCTM(context, window.transform);

CGContextTranslateCTM(context,-window.bounds.size.width * window.layer.anchorPoint.x, -window.bounds.size.height *window.layer.anchorPoint.y);if (orientation ==UIInterfaceOrientationLandscapeLeft)

{

CGContextRotateCTM(context, M_PI_2);

CGContextTranslateCTM(context,0, -imageSize.width);

}else if (orientation ==UIInterfaceOrientationLandscapeRight)

{

CGContextRotateCTM(context,-M_PI_2);

CGContextTranslateCTM(context,-imageSize.height, 0);

}else if (orientation ==UIInterfaceOrientationPortraitUpsideDown) {

CGContextRotateCTM(context, M_PI);

CGContextTranslateCTM(context,-imageSize.width, -imageSize.height);

}if([window respondsToSelector:@selector(drawViewHierarchyInRect:afterScreenUpdates:)])

{

[window drawViewHierarchyInRect:window.bounds afterScreenUpdates:YES];

}else{

[window.layer renderInContext:context];

}

CGContextRestoreGState(context);

}

UIImage*image =UIGraphicsGetImageFromCurrentImageContext();

UIGraphicsEndImageContext();//修改图片

NSData *imageData =UIImagePNGRepresentation(image);

UIImage*LastImage =[UIImage imageWithData:imageData];

UIImage*img = [UIImage imageNamed:@"ico_nursery.png"];

CGImageRef imgRef=img.CGImage;

CGFloat w=CGImageGetWidth(imgRef);

CGFloat h=CGImageGetHeight(imgRef);//以1.png的图大小为底图

UIImage *img1 =LastImage;

CGImageRef imgRef1=img1.CGImage;

CGFloat w1=CGImageGetWidth(imgRef1);

CGFloat h1=CGImageGetHeight(imgRef1);//以1.png的图大小为画布创建上下文

UIGraphicsBeginImageContext(CGSizeMake(w1, h1 + 100));

[img1 drawInRect:CGRectMake(0, 0, w1, h1)];//先把1.png 画到上下文中

[img drawInRect:CGRectMake(10, h1 + 10, 80, 80)];//再把小图放在上下文中

UIImage *resultImg = UIGraphicsGetImageFromCurrentImageContext();//从当前上下文中获得最终图片

UIGraphicsEndImageContext();//关闭上下文

returnresultImg;

}

ios android 截屏 分享,iOS截屏并修改截图然后分享的功能实现相关推荐

  1. ios android跨服务器,阴阳师ios怎么转安卓 阴阳师跨系统角色转移服务介绍_游侠手游...

    阴阳师ios怎么转安卓?阴阳师在2021年1月20日更新后开启了跨系统角色转移服务试行,那么本次跨系统角色转移的规则是什么样的,ios和安卓之间转换需要满足什么条件呢?接下来就让我们一起了解一下吧. ...

  2. ios android 同步的备忘录,iOS 备忘录如何共享给好友编辑 / Android 如何实现下拉搜索 | 有轻功 #012...

    「有轻功」是 AppSo 新栏目 它是「有用功」的迷你瘦身版 每天 10 秒钟 教你 1 个即学即用的手机技巧 微信号 appsolution 后台回复 「有轻功」获取该栏目的所有文章 这是第 12 ...

  3. 兼容iOS Android,React Native兼容iOS Android的TabBar

    最近着手开发的一个兼容iOS.Android的TabBar.还在不断开发中! 欢迎fork,欢迎star. :p 自己捣鼓了个E文的readme,没啥难度凑合可看. react-native-tabs ...

  4. ios android与wp,在iOS与Android间选择WP

    10月30日,微软发布了Windows Phone 8系统,并将在11月份开始发售相关搭载该系统的手机.在iOS.Android已经为广大用户所熟知的今天,WP8带来的的体验势必有所不同.其是否可以在 ...

  5. ios android app 混编,ios、android移动应用APP原生/混合定制开发

    功能板块 - 注册模块 . 支付模块 . 工具类 . 个人中心 . 互动模块 . 新闻资讯模块 . 广告模块 . 通用模块 . 招聘模块 . 发单抢单 . 地图模块 . 聊天通讯 . 活动模块 . 电 ...

  6. ios android 联机游戏平台,iOS 和安卓游戏终于互通了

    目前市面上绝大多数的游戏都分为 iOS 和安卓版,两个平台的玩家虽然可以联机对战,但游戏数据却不互通.玩家在更换不同平台的手机后,原有角色会因为系统更换而无法在新手机中继续使用. iOS 和安卓游戏数 ...

  7. ios android mid音频文件,ios – 使用MusicPlayer和Music Sequence播放midi文件

    我使用以下代码成功地让iOS使用soundfont示例播放.mid(midi)文件: -(void) playMusic:(NSString*) name { NSString *presetURLP ...

  8. ios android统一开发平台,iOS EMAS 统一接入

    使用说明 配置文件下载 配置文件下载请参考 iOS端配置文件:AliyunEmasServices-Info.plist 配置文件引用Xcode中,将AliyunEmasServices-Info.p ...

  9. ios android gpu,流畅秒杀iOS Android 4.0 GPU加速测试

    作者:王鑫 Android 4.0系统从去年年底发布到现在已经有5个多月的时间了,源代码放出也已经四个多月,按照正常的速度来讲,Android 4.0早应该成为主流,而直到现在,厂商各种四核强机频频曝 ...

最新文章

  1. AI洞观 | AI寒冬将至?大咖们呼吁重启AI
  2. (Android 即时通讯) [悬赏],不管是谁发现一个漏洞奖励人民币1000元!
  3. Linux内核的namespace机制分析
  4. android打开项目更换版本,android1.6项目,换成其他包的方法,及修改默认启动虚拟机的版本...
  5. 【NOIP模拟】方格稿纸
  6. unity 4种实现动态障碍方法
  7. python从csv读取数据到网页输入框_python中怎么把csv文件读取的数据显示在网页上...
  8. oracle经常开关好吗,频繁开关机对电脑有什么影响吗?
  9. 32 bit 与 64 bit 程序(2)比较
  10. MySQL数据库工具类之——DataTable批量加入MySQL数据库(Net版)
  11. java封装需要多久_Java对时间操作的一些封装函数
  12. html js 读取资源文件,使用HTML5和JQuery读取CSV(Text)文件的实例
  13. 【转】html5离线储存,application cache,manifest使用体验
  14. webservice 安全性 对外_WebService的安全性讨论【身份识别】
  15. 技术胖--前端学习html5表单美化部分笔记
  16. 使用Entrez下载文献
  17. DeeCamp 2020 挑战赛:通过深度学习识别生物电信号
  18. qiankun前端微服务框架-同一服务器同一端口
  19. 小满网络模型http1-http2 浏览器缓存
  20. HDMI接口简介---分辨率 时钟频率 lane速率计算

热门文章

  1. 计算机视觉--光流法(optical flow)简介
  2. mac电脑快速截图快捷键是什么?苹果mac电脑怎么截图?mac电脑截图的13种方法
  3. Could not generate persistent MAC address
  4. 光伏PID效应危害及修复方法之一
  5. javascript:_最佳JavaScript资源收藏:2020版
  6. 【通信原理】基于【MATLAB】的通信OFDM系统仿真
  7. 求是科学班计算机,浙江大学2010年“求是科学班”招生简介
  8. 帷幄空间数据平台 - 新零售人货场重构 新零售人货场的定义
  9. 定义一个Document类,有数据成员name,从Document派生出Book类,增加数据成员pageCount。
  10. This is Water