http://www.cnblogs.com/chenxiangxi/p/3547974.html

这位博主的连接中将ios自定义大小位置的截屏代码写的很不错,马上就能用的方法,对于只想马上用的程序员很有帮助

http://www.2cto.com/kf/201310/250228.html

我将其改为以下代码:

 1 #pragma mark -=====自定义截屏位置大小的逻辑代码=====-
2 static int ScreenshotIndex=0; //这里的逻辑直接采用上面博主的逻辑了
3 -(void)ScreenShot{
4 //这里因为我需要全屏接图所以直接改了,宏定义iPadWithd为1024,iPadHeight为768,
5 // UIGraphicsBeginImageContextWithOptions(CGSizeMake(640, 960), YES, 0); //设置截屏大小
6 UIGraphicsBeginImageContextWithOptions(CGSizeMake(iPadWidth, iPadHeight), YES, 0); //设置截屏大小
7 [[self.view layer] renderInContext:UIGraphicsGetCurrentContext()];
8 UIImage *viewImage = UIGraphicsGetImageFromCurrentImageContext();
9 UIGraphicsEndImageContext();
10 CGImageRef imageRef = viewImage.CGImage;
11 // CGRect rect = CGRectMake(166, 211, 426, 320);//这里可以设置想要截图的区域
12 CGRect rect = CGRectMake(0, 0, iPadWidth, iPadHeight);//这里可以设置想要截图的区域
13 CGImageRef imageRefRect =CGImageCreateWithImageInRect(imageRef, rect);
14 UIImage *sendImage = [[UIImage alloc] initWithCGImage:imageRefRect];
15 UIImageWriteToSavedPhotosAlbum(sendImage, nil, nil, nil);//保存图片到照片库
16 NSData *imageViewData = UIImagePNGRepresentation(sendImage);
17
18 NSArray *paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
19 NSString *documentsDirectory = [paths objectAtIndex:0];
20 NSString *pictureName= [NSString stringWithFormat:@"screenShow_%d.png",ScreenshotIndex];
21 NSString *savedImagePath = [documentsDirectory stringByAppendingPathComponent:pictureName];
22 NSLog(@"截屏路径打印: %@", savedImagePath);
23 //这里我将路径设置为一个全局String,这里做的不好,我自己是为了用而已,希望大家别这么写
24 [self SetPickPath:savedImagePath];
25
26 [imageViewData writeToFile:savedImagePath atomically:YES];//保存照片到沙盒目录
27 CGImageRelease(imageRefRect);
28 ScreenshotIndex++;
29 }
30 //设置路径
31 - (void)SetPickPath:(NSString *)PickImage {
32 _ScreenshotsPickPath = PickImage;
33 }
34 //获取路径<这里我就直接用于邮件推送的代码中去了,能达到效果,但肯定有更好的写法>
35 - (NSString *)GetPickPath {
36 return _ScreenshotsPickPath;
37 }

ios截屏代码[转]的更多相关文章

  1. iOS截屏代码

    转载自:http://m.open-open.com/m/code/view/1420469506375 1.普通界面 /** *截图功能 */ -(void)screenShot{ UIGraphi ...

  2. ios摇一摇截屏代码

    #import "ViewController.h" @interface ViewController () @end @implementation ViewControlle ...

  3. iOS 截屏分享(包含状态栏与不包含状态栏)

    iOS8以上的新方法PhotoKit 监听截图相册变化,取最后一张图片:http://www.hangge.com/blog/cache/detail_1515.html PhotoKit 获取本机相 ...

  4. iOS截屏功能

    代码: - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. // ...

  5. 【转】Android 音量键+电源键 截屏代码小结

    http://104zz.iteye.com/blog/1752961 原文地址:http://blog.csdn.net/hk_256/article/details/7306590 ,转载请注明出 ...

  6. iOS截屏保存至相册

    #pragma mark 截屏并保存至相册 -(void)screenShotsComplete:(void(^)(UIImage * img)) complete { CGSize imageSiz ...

  7. iOS截屏并修改截图然后分享的功能实现

    一. 实现的效果类似微博的截图分享 不仅截图分享的时候还进行图片的修改,增加自己的二维码 二.实现方式 苹果在ios7之后提供了一个新的通知类型:UIApplicationUserDidTakeScr ...

  8. iOS截屏方法

    //获取屏幕截屏方法 - (UIImage *)capture { // 创建一个context UIGraphicsBeginImageContextWithOptions(self.view.bo ...

  9. IOS 截屏(保存到相册中)

    @interface NJViewController () /** * 点击截屏按钮 */ - (IBAction)captureView:(UIButton *)sender; /** * 白色v ...

随机推荐

  1. 笔记-python-built-in functions-eval,exec,compile

    笔记-python-built-in functions-eval,exec,compile 1.      python代码执行函数 有时需要动态改变代码,也就是说代码需要是字符串格式,然后在按需要 ...

  2. Java实现系统目录实时监听更新。

    SDK1.7新增的nio WatchService能完美解决这个问题.美中不足是如果部署在window系统下会出现莫名其妙的文件夹占用异常导致子目录监听失效,linux下则完美运行.这个问题着实让人头 ...

  3. JAVA API访问Hbase org.apache.hadoop.hbase.client.RetriesExhaustedException: Failed after attempts=32

    Java使用API访问Hbase报错: 我的hbase主节点是spark1   java代码访问hbase的时候写的是ip 结果运行程序报错 不能够识别主机名 修改主机名     修改主机hosts文 ...

  4. 使用 jQuery Mobile 与 HTML5 开发 Web App 系列文章目录

    使用 jQuery Mobile 与 HTML5 开发 Web App 系列文章目录 时间:2012年9月20日 分类:JavaScript 标签:HTML5‚ jQuery Mobile‚ Web ...

  5. 【Validation】林轩田机器学习基石

    这一节主要讲如何通过数据来合理的验证模型好不好. 首先,否定了Ein来选模型和Etest来选模型. (1)模型越复杂,Ein肯定越好:但是Eout就不一定了(见上一节的overfitting等) (2 ...

  6. 【java下午茶系列】java三重奏之封装

      java中的封装.继承.多态可谓是踏入这一行业的必经之槛,诸多新人在不明就里的情况下将其各种概念背的是滚瓜烂熟.即便是工作多年之后,也不见得能说出个所以然,或许冥冥之中已经写过无数封装的代码,只是 ...

  7. MySQL、MongoDB、Redis 数据库之间的区别与使用(本章迭代更新)

    MySQL.MongoDB.Redis 数据库之间的区别与使用 MySQL.MongoDB.Redis 数据库之间的区别与使用(本章迭代更新) update:2019年2月20日 15:21:19(本 ...

  8. 最小化安装Linux的常用配置整理

    基于安全性考虑,将服务器进行最小化安装,毕竟软件包越少,漏洞越少,相对来说就约安全,但是最小化安装会给运维带来一些问题和不便,下面是我总结的,常见的一些配置和工具的安装,仅供各位大神参考,如有新的id ...

  9. 百度webuploader上传 1

    百度webupload网址:http://fex.baidu.com/webuploader/ 引入js和css <script src="../../Content/webuploa ...

  10. Singleton patterns 单件(创建型模式)

    1.模式分类 1.1  从目的来看: •      – 创建型(Creational)模式:负责对象创建. •      – 结构型(Structural)模式:处理类与对象间的组合. •      ...