文档章节

Objective C的图形类使用基础课程(四)

 马洪伟
发布于 2015/01/05 15:34
字数 438
阅读 36
收藏 1

腾讯视频  Objective C的图形类使用    链接:http://dwz.cn/zH6nM


一.UIImage类是用来处理图像,比如在窗口上显示图像,从一个文件上读取图像等等。

    1.UIImage提供了一下不同的方法来读取图片,从而创建图像对象;

       //从应用程序上读取图像,参数为文件名(文件已经拷贝在应用中)

       +【UIImage imageNamed:(NSString *) name】

       //从文件系统上读取图像,参数为完整文件名(包括路径信息)

       -  [UIImage initWithContentsOfFile:(NSString *)path]

       -  [UIImage initWithData:(NSData *)data]//从内存中读取图像数据

         除了读取图像外,UIImage还可以生成一个bitmap图像。比如,用户在某一个应用程序的窗口上画了一个图,然后 应用程序可以将该图保存成一个bitmap图像。

         -(UIImage *)saveToImage:(CGSize)size{

              UIImage *result=nil;

              UIGraphicsBeginImageContext(size);

             //调用画图的代码

             result=UIGraphicsGetImageFromCurrentContext();//捕捉所化的图

             UIGraphicsEndImageContext();

            return result; 

 

       } 

      另外,你可以使用如下方法将图像转换成PNG和JPEG

       NSData  *UIImagePNGRepresentation(UIImage *image);

       NSData  *UIImageJPGRepresentation(UIImage *image);

      UIImages也提供了drawRect方法,所以,开发人员可以调用下述方法画图:

  

      -【UIImage drawAtPoint:(CGPoint)point】

      -【UIImage drawAtPoint:(CGPoint)point】

      -【UIImage drawAsPatternInRect :(CGRect)rect】

二.图像的滚动.放大和缩小

     在创建视图时,你可以在界面创建器上设置UIScrollView的大小。

     CGRect  fram =CGRectMake(0,0,200,200);

     scrollView =[[UIScrollView alloc] initWithFrame:frame];

     首先创建图像视图,然后添加该图像视图到滚动视图下。最后设置滚动视图的大小为图像视图的大小:

     frame=CGRectMake(0,0,500,500);

     myImageView=【【UIImageView alloc】initWithFrame:frame】

    【scrollView addSubview:myImageView];

     scollView.contetSize=CGSizeMake(500,500);

     在iphone中是通过UIScrollViewDelegate来完成。

     初了滚动,UIScrollView也支持放大和缩小,比如:

      scrollView.maximumZoomScale=2.0;

      scrollView.minimumZoomScale=scrollView.size.width/myImage.size.width;


© 著作权归作者所有

粉丝 4
博文 15
码字总数 12127
作品 0
保定
私信 提问
Xcode实战入门 —— [基础知识储备]

前一篇提到:你应该有一些C或者C++基础,或者Java基础。 个人以为只有Java基础入门Xcode比较困难,特别是非科班出身,从未接触过C的朋友,即使已经能照着例子写东西,确没意思到自己还在门外...

summer
2013/03/14
3.8K
2
iOS开发之Object-C和Cocoa [转]

Objective-C Objective-C,是扩充C的面向对象编程语言。是在C的基础上,加入面向对象特性扩充而成的编程语言。目前,Objective-C主要应用于Mac OS X和iOS开发,而在NeXTSTEP和OpenStep中它更...

ilscott
2012/12/13
260
0
iOS开发CoreGraphics核心图形框架之一——CGPath的应用

iOS开发CoreGraphics核心图形框架之一——CGPath的应用 一、引言 CoreGraphics核心图形框架相较于UIKit框架更加偏于底层。在Objective-C工程中,CoreGraphics其中方法都是采用C语言风格进行编...

珲少
2016/10/11
17.3K
0
【python数据挖掘课程】十七.社交网络Networkx库分析人物关系(初识篇)

这是《Python数据挖掘课程》系列文章,也是我大数据金融学院上课的部分内容。本章主要讲述复杂网络或社交网络基础知识,通过Networkx扩展包绘制人物关系,并分析了班级学生的关系学院信息。本...

Eastmount
2017/11/05
0
0
iOS开发经验谈

放眼全球,iOS开发前景广阔。国内市场缺少iOS开发人才,人才招聘供不应求;随着专、本科生的普遍,企业更注重技能型人才! 由于国内iOS开发起步相对较晚,人才培养机制更是远远跟不上市场发展...

让往事随风
2016/04/13
154
1

没有更多内容

加载失败,请刷新页面

加载更多

只需一步,在Spring Boot中统一Restful API返回值格式与统一处理异常

统一返回值 在前后端分离大行其道的今天,有一个统一的返回值格式不仅能使我们的接口看起来更漂亮,而且还可以使前端可以统一处理很多东西,避免很多问题的产生。 比较通用的返回值格式如下:...

晓月寒丶
昨天
59
0
区块链应用到供应链上的好处和实际案例

区块链可以解决供应链中的很多问题,例如记录以及追踪产品。那么使用区块链应用到各产品供应链上到底有什么好处?猎头悬赏平台解优人才网小编给大家做个简单的分享: 使用区块链的最突出的优...

猎头悬赏平台
昨天
28
0
全世界到底有多少软件开发人员?

埃文斯数据公司(Evans Data Corporation) 2019 最新的统计数据(原文)显示,2018 年全球共有 2300 万软件开发人员,预计到 2019 年底这个数字将达到 2640万,到 2023 年达到 2770万。 而来自...

红薯
昨天
65
0
Go 语言基础—— 通道(channel)

通过通信来共享内存(Java是通过共享内存来通信的) 定义 func service() string {time.Sleep(time.Millisecond * 50)return "Done"}func AsyncService() chan string {retCh := mak......

刘一草
昨天
58
0
Apache Flink 零基础入门(一):基础概念解析

Apache Flink 的定义、架构及原理 Apache Flink 是一个分布式大数据处理引擎,可对有限数据流和无限数据流进行有状态或无状态的计算,能够部署在各种集群环境,对各种规模大小的数据进行快速...

Vincent-Duan
昨天
60
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部