ios编程:iPhone How-to:给UIView拍照

基本原理就是主要将UIView的layer描绘到图形上下文。UIView全局拍照和局域拍照的代码如下:

1 UIView全局拍照

- (UIImage *) screenImage:(UIView *)view {
UIImage *screenImage;
UIGraphicsBeginImageContext(view.frame.size);
[view.layer renderInContext:UIGraphicsGetCurrentContext()];
screenImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return screenImage;
}

2 UIView局域拍照

- (UIImage *) screenImage:(UIView *)view rect:(CGRect)rect {
CGPoint pt = rect.origin;
UIImage *screenImage;
UIGraphicsBeginImageContext(rect.size);
CGContextRef context = UIGraphicsGetCurrentContext();
CGContextConcatCTM(context,
CGAffineTransformMakeTranslation(-(int)pt.x, -(int)pt.y));
[view.layer renderInContext:context];
screenImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
return screenImage;
}

来源:http://blog.csdn.net/lbj05/archive/2011/04/02/6297209.aspx

时间: 2024-11-08 18:52:08

ios编程:iPhone How-to:给UIView拍照的相关文章

《iOS编程指南》——2.5节准备你的iOS设备

2.5 准备你的iOS设备 iOS编程指南 在设备上部署应用之前,你需要按照图2-5所示的步骤来做相关配置. 如果你已经加入了iOS开发者计划的标准版或者企业版,你现在就可以生成相应的证书和描述文件(Provisioning Profile)了,通过这个证书和描述文件,你才能把下一章中的测试程序安装到你的iOS设备上. 证书和描述文件 Xcode构建工程的时候需要使用开发证书来对二进制文件进行签名,这个开发证书同时也是你作为iOS开发者的唯一标识.Xcode会从Mac OS X的Keychain

《iOS编程指南》——1.1节优点和缺点

1.1 优点和缺点 iOS编程指南 对于苹果发布的SDK,也不是所有人都买账,在有些人看来这简直是技术的退步,他们认为Web应用已经足够好了.因为用Objective-C专门针对iPhone开发的应用很难移植到其他平台,而Web应用只需要开发一套新的CSS模板就可以了. 但用户并不同意这样的观点,他们才不管开发起来难度有多大,他们只关心好不好用.不过说起来Web应用移植起来也没有想象中那样容易.各个平台的应用外观不尽相同,在做到平台兼容的同时还要实现外观的本地化,其实是一件非常困难的事.如果把W

揭秘iPhone能比其他手机拍照效果优秀的原因

在知乎上有用户提问:影像行业不是需要很多年的积累才可以拥有优异的表现吗?那么iPhone 的影像基础又是从何而来,为什么像索尼那样拥有柯尼卡美能达的基础却在手机成像上做不过苹果?而又是为什么苹果能在没有任何影像基础(恐是不實描述)的情况下制造出了比其他手机拥有更加优秀拍照效果的iPhone? 下面是一位知乎用户回答: 知乎用户:李楠 在事实上,有主流手机厂商的摄像头供货商也就那么几家.而Sony自己本身就是iPhone的主要摄像头供货商的一家.(还有另外一家是 omnivision ,在向苹果供

在iOS上让人眼花缭乱的免费拍照应用

在现在,拍照应用已经是Appstore上最为热门的分类之一,而重要原因就在于iPhone本身自带的拍照功能就已经足够能满足普通用户的要求,甚至还有人断言,iPhone将会彻底颠覆传统的相机产业.虽然,小编并不是很认同这个观点,但是在现在的iOS平台上各种拍照应用还是层出不穷,其中有些确实也让人拍案叫绝.而为此,小编特地从Appstore上精选出下面12款免费的应用,小编相信,总有一款会适合你! Photosynth 开发商:Microsoft Corporation 简介:当你往Photosyn

《iOS编程指南》——2.1节注册成为iOS开发者

2.1 注册成为iOS开发者 iOS编程指南 在不久之前,获取Xcode需要先注册为苹果开发者.现在不必了,你从Mac App Store直接就可以下载最新本的Xcode和iOS SDK. 如果你还在使用OS X 10.6(Snow Leopard),那么你需要先注册为苹果开发者,成为iOS开发者计划的一员,然后从iOS Dev Center下载Xcode 4和iOS SDK,因为Mac App Store上提供的Xcode的版本只兼容OS X 10.7(Lion)和10.8(Mountain

iOS 委托与文本输入(内容根据iOS编程编写)_IOS

•文本框(UITextField) 本章节继续编辑 JXHypnoNerd .文件地址 . 首先我们继续编辑 JXHypnosisViewController.m 修改 loadView 方法,向 view 中添加一个 UITextField 对象: #import "JXHypnosisViewController.h" #import "JXHypnosisView.h" @interface JXHypnosisViewController () @end @

《iOS编程指南》——第 1 章为何选择本地化应用

第 1 章 为何选择本地化应用iOS编程指南早在2007年发布iPhone的时候,苹果并没有一同发布本地化SDK,苹果公司声称不需要本地化SDK,鼓励大家使用JavaScript,CSS和HTML开发Web应用.但接下来剧情并没有按照苹果设计的那样发展,也许是苹果的思想太超前,大多数开发者并不吃这一套,他们希望自己开发的应用和iOS系统内置的应用一样,可以直接访问硬件并和系统高度集成. 于是在iPhone发布后短短几个月,开源社区就完成了一系列苹果原本认为不可能的事情.苹果本来试图通过技术手段把

《iOS编程指南》——2.2节加入iOS开发者计划

2.2 加入iOS开发者计划iOS编程指南如果你打算在App Store上销售你的应用,或者仅仅只是想把它们安装到自己的iPhone,iPod touch或iPad上,那么你需要加入iOS开发者计划.如果你还没注册为苹果开发者,你可以在下面的过程中来完成. iOS开发者计划是按年付费的,在过期前60天可以开始续费.如果你不续费的话,你将无法发布应用.另外苹果会吊销你的开发者证书和发布证书.最后,苹果会将你在iTunes App Store上的所有应用下架. 加入iOS开发者计划有两个选择.大多数

《iOS编程指南》——第2章成为一名开发者

第 2 章 成为一名开发者iOS编程指南在你正式开始写代码之前,需要先做些准备.首先你需要安装苹果的集成开发环境Xcode,以及iOS SDK.这些都由苹果公司提供,你可以在Mac App Store直接下载并安装. 然而,如果你希望发布你的应用,或者仅仅只是希望把它们安装到你的设备上,则需要向苹果公司注册为开发者,然后加入iOS开发者计划.接下来你还需要创建.下载并安装一系列的证书和文件,之后才能把你的应用部署到你的iPhone,iPod touch和iPad上去. 开发iOS应用需要一台In

疑问-IOS开发,cell中的UIView上添加的按钮不能响应事件

问题描述 IOS开发,cell中的UIView上添加的按钮不能响应事件 cell 里添加UIView,UIView上添加按钮,但是按钮不能响应点击时间,交互都打开了,怎么回事,求解.. 解决方案 可能是线程卡死,也可能是所有事件全部都集中在了UIView上无法分发时间,这里给你推荐一个博客http://blog.csdn.net/u013243469/article/details/41284027