iOS开发之代码截图

用Quartz2D

 1     CGSize imageSize = self.view.bounds.size;
 2     //开启图形上下文
 3     UIGraphicsBeginImageContextWithOptions(imageSize, NO, 0);
 4     //获得图形上下文
 5     CGContextRef context = UIGraphicsGetCurrentContext();
 6     //将View渲染到图形上下文
 7     [self.view.layer renderInContext:context];
 8     //从上下文中取得图像
 9     UIImage *image = UIGraphicsGetImageFromCurrentImageContext();
10
11     UIImageWriteToSavedPhotosAlbum(image, nil, nil, nil);
12     //切割图片
13     CGImageRef subimageRef = CGImageCreateWithImageInRect(image.CGImage, CGRectMake(0, 0, 320, 320));
14     UIImage *subImage1 = [UIImage imageWithCGImage:subimageRef];
15
16     UIImageWriteToSavedPhotosAlbum(subImage1, nil, nil, nil);
17
18     UIGraphicsEndImageContext();
时间: 2024-11-09 00:42:57

iOS开发之代码截图的相关文章

iOS开发 纯代码创建UICollectionView

转:http://jingyan.baidu.com/article/eb9f7b6d8a81a5869364e8a6.html iOS开发 纯代码创建UICollectionView 习惯了使用xib和StoryBoard创建UICollectionView项目工程的伙伴,需要转换使用纯代码来实现,想避免碰更多的壁,就需要认真了解创建UICollectionView过程了.创建UICollectionView比创建UITableView更加复杂,初始化方式也是相对奇特.以下是使用纯代码创建UI

设计模式之单一职责原则(iOS开发,代码用Objective-C展示)

单一职责原则:就一个类而言,应该只有一个引起它变化的原因. 在iOS开发中,我们会很自然的给一个类添加各种各样的功能,比如随便写一个简单的应用程序,一般都会生成一个viewController类,于是我们将各种各样的代码,商业运算的算法.http请求的参数(params)封装.使用FMDB.coreData时的数据库访问语句都放在这个类里面,这就意味着,无论任何需求变化,都要来修改viewController这个类,这其实是很糟糕的,维护麻烦.复用不可能.缺乏灵活性. 也许上面说的略微夸张,因为

设计模式之工厂模式(iOS开发,代码用Objective-C展示)

<大话设计模式>这是一本经典之作,本来我该看<Objective-C编程之道:IOS设计模式解析 >,其实我也是先看的<Objective-C编程之道:IOS设计模式解析 >,但不得不说,其中内容有些深奥,理解起来比较困难.这与我一贯的学习方针不合,我更喜欢一个循序渐进的过程,从认知到实践再到思维上的一个比较深入的学习.然后有朋友向我推荐了<大话设计模式>这本书籍,初看,感觉很是符合我现在这个阶段,在此以前,我所编码中接触的设计模式都是比较简单的,在代码上也

【iOS开发】代码实现屏幕截图功能,也可以截取某个View 模糊效果

菜鸟一只,早就有写博客的打算了,可是一直不知道从什么开始写起,这个状态持续了快半年了······最近越来越迫切的感觉要把平时开发和自己学到的一些东西记录下来,于是打算在这里开写了!同时和大家一起分享! 平时会看到很多iOS App会用到一些模糊半透明的效果,其实这种效果的实现是先在原屏幕特定区域截图,得到UIImage,处理这个UIImage得到想要的效果.然后把这个处理后的UIImage添加到当前的View上. 由此可见,做这个半透明模糊效果的的前提是截图,那么下面这个方法可以实现这个功能:

iOS开发-xCode代码托管到GitHub

xCode默认的是由源代码管理工作Git,Android Studio内置的也有,之前写过两篇关于Window托管Android代码到GitHub的文章,一直想写篇关于Mac上托管代码的到文章,今天终于有时间写写,xCode中默认带有Git这种行为确实很赞,对于习惯于Git的人是非常舒适的,一般打开xCode在第三项可以选择迁出已经存在的项目,因此如果需要修改GitHub上的代码或者是公司协同开发的时候都可以选择此种方式: 托管到GitHub 托管的方式有两种,一种是使用Git命令,将代码托管到

IOS开发-关于代码管理工具之SVN

最近在做的一个项目,就用到了代码管理工具,那么就对SCN进行了一个简单的了解,即原理和一些常用命令. 那么我们为什么需要使用SVN呢,我们可以吧SVN当成是一个备份服务器,他可以帮你记住每次上传到这个服务器的档案内容,并且自动的赋予每次变更的一个版本. 因为如果是团队开发的话,版本管控是非常重要,你无法保证你手头上的版本永远都是对的,对于团队开发来说,数据同步非常重要,因为互相都需要各自的数据,所以SVN可以帮你解决这个问题. 1.概述 SVN 是集中式源代码管理工具 概念:1> Reposit

iOS开发常用代码片段整理

1.判断邮箱格式是否正确的代码 //利用正则表达式验证 -(BOOL)isValidateEmail:(NSString *)email { NSString *emailRegex = @"[A-Z0-9a-z._%+-][email protected][A-Za-z0-9.-]+\\.[A-Za-z]{2,4}"; NSPredicate *emailTest = [NSPredicate predicateWithFormat:@"SELF MATCHES%@&quo

iOS开发常用代码块(2)

GCD定时器 dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0); dispatch_source_t timer = dispatch_source_create(DISPATCH_SOURCE_TYPE_TIMER, 0, 0,queue); dispatch_source_set_timer(timer,dispatch_walltime(NULL, 0),1.0*NS

iOS开发-xCode代码格式化xAlign

xCode默认是可以进行代码格式化的,能满足基础开发需求,如果想要个性一些代码对齐方式宏对齐,等号对齐,属性对齐,xAlign就提供了以上三种功能,参考文中效果~ 基础效果 等号对齐: 属性对齐: 宏对齐: 插件安装 1.控制台命令 curl -fsSL http://qfi.sh/XAlign/build/install.sh | sh 2.手动安装下载插件包:XAlign.xcplugin,将下载的插件放在~/Library/Application Support/Developer/Sha