IOS Drawing 3

 UIKit 框架属于高层框架,

 

 除此之外,另两个低层框架是经常用到的: Core Graphics And image I/O .

 

通过Core Graphics我们可以创建和应用image masks,从一个存在的iamges中创建一部分对象,应用一个色彩空间,可以通过每一个字节,每一个像素的访问images,并渲染。

 

image I/O 框架和Core Graphics紧密相关。它允许应用程序去读取和写入各种image文件格式。它可以快速的编码和解码image,iamge metadata和image caching。

 

UIImageView is a method to display an Image. but you can use [UIImage drawInRect] to overload drawRect method to display an Image.

 

[anImage drawAtPoint:CGPointMake(10, 10)]

 

我们可以创建一个bitmap image context,然后绘制它,再从context中得到一个image 对象。我们可以在很多情况下使用此技术。如缩小一个image(创建一个缩微图),合成多张image,或者保存在静态形式下的drawing 结果。
    我们可以使用UIKit框架或者Core Graphics框架的函数去绘制一个bitmap context ,然后从中提取image

 

在UIKit中,过程如下:
(1)调用函数 UIGraphicsBeginImageContextWithOptions or UIGraphicsBeginImageContext去创建一个新的image-based graphics context。
第一个函数是首选,他有三个参数,bitmap的size,一个标记指示bitmap是否不透明,已经应用与bitmap的scale factor。如果我们想要image有部分透明的像素,不透明标记应该设置为NO。

(2)在context中draw image内容。可以使用UIKit方法或者Core Graphics函数去绘制。

(3)调用函数UIGraphicsGetImageFromCurrentImageContext 去生成和返回一个绘制的UIImage对象。我们可以在调用此方法之后继续绘制images。

(4)调用函数UIGraphicsEndImageContext去关闭graphic context。

 

posted @ 2012-04-01 15:29  姜萌芽  阅读(229)  评论(0编辑  收藏  举报