七 、Quartz 2D Bitmap上下文
Bitmap
图形上下文用来,储存绘图的基本信息,也决定着,将来要绘制到哪里去。
我们之前在drowRect中获取图形上下文。
那是因为,系统在显示view时,会自动掉用drowRect方法。
在这时(掉用drowRect方法)会自动创建layer图形上下文。
所以我们可以获取到图形上下文(实际上,我们获取的是layer的图形上下文)。
现在,我们要创建bitmap的图形上下文。
和view,layer并没有直接的关系。
也就是说,在系统调用drowRect方法时,不会创建bitmap的图形上下文。
所以,我们不必要,再去创建一个view了。
(我们创建一个view,重写drowRect方法,目的是拿到layer的图形上下文。
将来,将我们绘制的图形,渲染到view上,
因为,图形上下文,决定着将来绘制到哪里去)
如图
嗯嗯,一堆废话...
- (void)viewDidLoad {[super viewDidLoad];// 创建bitmap图形上下文// 这里有两种方法,这个将来图片会模糊,所以我们用下面的// UIGraphicsBeginImageContext()/*** 创建bitmap图形上下文** @param size#> 指定将来创建出来的bitmap的大小* @param opaque#> YES:不透明 NO:透明* @param scale#> 缩放比例*/UIGraphicsBeginImageContextWithOptions(CGSizeMake(200, 200), YES, 0);// 获取刚才创建的bitmap图形上下文CGContextRef ctx = UIGraphicsGetCurrentContext();// 设置线条颜色CGContextSetRGBStrokeColor(ctx, 1, 0, 0, 1);// 绘图CGContextAddRect(ctx, CGRectMake(0, 0, 100, 100));// 渲染 CGContextStrokePath(ctx);// 获取生成的图片UIImage *img = UIGraphicsGetImageFromCurrentImageContext();NSData *data = UIImagePNGRepresentation(img);[data writeToFile:@"/Users/wangyakang/Desktop/abc1.png" atomically:YES];}
转载于:https://www.cnblogs.com/kinghx/p/5377490.html
七 、Quartz 2D Bitmap上下文相关推荐
- 绘图与滤镜全面解析--Quartz 2D 、Core Image
绘图与滤镜全面解析 概述 在iOS中可以很容易的开发出绚丽的界面效果,一方面得益于成功系统的设计,另一方面得益于它强大的开发框架.今天我们将围绕iOS中两大图形.图像绘图框架进行介绍:Quartz 2 ...
- Quartz 2D Programming Guide笔记
###Graphics Contexts图形上下文### 图形上下文(graphics context)是绘制目标,可以理解为画布,包含着绘图时的参数和设备信息.类型为CGContextRef.获取g ...
- iOS 2D绘图详解(Quartz 2D)之概述
原创Blog,转载请注明出处 http://blog.csdn.net/hello_hwc?viewmode=list 前言:最近在研究自定义控件,由于想要彻底的定制控件的视图还是要继承UIView ...
- Quartz 2d绘图
今天看了一下Quartz 2D绘图,我只想说:不要把绘图和动画那些东西当做一个很复杂的东西,其实只要你认真看还是可以理解的.他们并不难.啰嗦了几句,现在直接进入正题: 前提是我们必须新建一个singl ...
- iOS开发之Quartz 2D绘图
2019独角兽企业重金招聘Python工程师标准>>> Quartz 2D是一个二维图形绘制引擎,支持iOS环境和Mac OS X环境 Quartz 2D API可以实现许多功能,如 ...
- quartz c语言,IOS学习之—— Quartz 2D (C语言的框架)
//************************************************************************************************** ...
- 在iOS5中使用Quartz 2D创建PDF-第二部分
翻译自:How To Create a PDF with Quartz 2D in iOS 5 – Part 2 在第一部分,我们为PDF创建了框架,使用Quartz 2D绘制了基本的文字和线条. 由 ...
- Quartz 2D绘图简介
Quartz 2D绘图 简介 Quartz 2D是2D绘图引擎,适用iOS和Mac OS X程序.它提供底层轻量级的接口,并且会根据输出显示设备提供不匹配的逼真的画面 .Quartz 2D是与分辨率 ...
- iOS绘图——Quartz 2D使用方法
自定义UIView时,只需要重写drawRect:方法 使用Quartz 2D其实也很简单 首先必须要获取绘图的环境,即获取上下文CGContextRef 然后使用各种API进行绘图就可以了(这里有很 ...
- iOS 2D绘图详解(Quartz 2D)之路径(点,直线,虚线,曲线,圆弧,椭圆,矩形)
前言:一个路径可以包含由一个或者多个shape以及子路径subpath,quartz提供了很多方便的shape可以直接调用.例如:point,line,Arc(圆弧),Curves(曲线),Ellip ...
最新文章
- 从地理分类的计算机网格,第2章-地理空间象计算机表达(6-9学时).doc
- ZeroC ICE java异步实现方式(ami/amd)
- Forefront Client Security部署及配置
- GSM/GPRS/WCDMA/EDGE/HSDPA?
- linux怎样测试tty,linux – 提示自定义:如何检测何时没有tty
- [NodeJs] 如何使用nodejs对base64进行编解码?
- 前端学习(1800):前端调试之清除浮动练习1
- 各类 HTTP 返回状态代码详解
- UI设计干货素材|如何正确使用直观打折数字使画面更饱满更具促销感!
- rstudio导入txt文件_r语言怎么读取txt文件
- 计算机网络断开后怎么连接,电脑网络断开怎样重新连接
- 下百度文库要券?来用 Python 自动下!
- 百度url提交入口 百度网站收录提交入口网址
- html流控破解脚本,tc 流控脚本
- AngularJs:Directive指令用法
- Apple Catching经典dp
- php携程 线程,php 如何获取这个携程页面的数据
- 利用 GDB 快速阅读 postgresql 的内核代码
- [1095]Appium使用wifi连接多台手机
- 毕业了,说几句真心话+献上自导自演的毕业照吧
热门文章
- 掌握3分钟网络排障秘技,网络管理员不再做“苦命人”
- 运维派送红包福利,参与就有!
- 2019Q1中高端人才报告:薪资TOP10,平均年薪超23万元
- delphi 去掉字符串中所有的标点符号_[话俾你知]Python使用正则处理字符串技巧(分割、替换)...
- 自动触发click事件
- 编程菜鸟的日记-初学尝试编程递归
- DataGrid的动态绑定问题(二)
- 添加映射的过程(2) - 解析
- HTML5截取视频第一帧作为预览图片
- 【JavaScript 封装库】BETA 2.0 测试版发布!