objective-c – iOS屏幕截图部分

objective-c – iOS屏幕截图部分,第1张

概述我有一个应用程序使用以下代码获取UI ImageView的屏幕截图: -(IBAction) screenShot: (id) sender{ UIGraphicsBeginImageContext(sshot.frame.size); [self.view.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *vie 我有一个应用程序使用以下代码获取UI ImageVIEw的屏幕截图:

-(IBAction) screenShot: (ID) sender{ UIGraphicsBeginImageContext(sshot.frame.size); [self.vIEw.layer renderInContext:UIGraphicsGetCurrentContext()]; UIImage *vIEwImage = UIGraphicsGetimageFromCurrentimageContext(); UIGraphicsEndImageContext(); UIImageWritetoSavedPhotosAlbum(vIEwImage,nil,nil);}

这个功能很好,但是我需要能够把屏幕截图基本上放在我只需要三分之一屏幕(中心部分)的位置.我试过使用

UIGraphicsBeginImageContext(CGSize 150,150);

但是发现每个东西都是从0坐标中得到的,有人有任何想法如何正确定位.

解决方法@H_301_24@ 那么截图是从你画的画布中取出的.
所以,而不是在整个上下文中绘制你的图层,参考左上角,你将画出你想要截图的地方.

//first we will make an UIImage from your vIEwUIGraphicsBeginImageContext(self.vIEw.bounds.size);[self.vIEw.layer renderInContext:UIGraphicsGetCurrentContext()];UIImage *sourceImage = UIGraphicsGetimageFromCurrentimageContext();UIGraphicsEndImageContext();//Now we will position the image,X/Y away from top left corner to get the portion we wantUIGraphicsBeginImageContext(sshot.frame.size);[sourceImage drawAtPoint:CGPointMake(-50,-100)];UIImage *croppedImage = UIGraphicsGetimageFromCurrentimageContext();UIGraphicsEndImageContext();UIImageWritetoSavedPhotosAlbum(croppedImage,nil);
总结

以上是内存溢出为你收集整理的objective-c – iOS屏幕截图部分全部内容,希望文章能够帮你解决objective-c – iOS屏幕截图部分所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1062485.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存