
绘图
bravegogo
知行合一,积学养气
展开
-
CALayer 异步绘制
UIKit的单线程天性意味着寄宿图通畅要在主线程上更新,这意味着绘制会打断用户交互,甚至让整个app看起来处于无响应状态。我们对此无能为力,但是如果能避免用户等待绘制完成就好多了。针对这个问题,有一些方法可以用到:一些情况下,我们可以推测性地提前在另外一个线程上绘制内容,然后将由此绘出的图片直接设置为图层的内容。这实现起来可能不是很方便,但是在特定情况下是可行的。Core Animatio转载 2016-04-04 16:37:23 · 2513 阅读 · 0 评论 -
GPU 纹理
纹理映射(Texture Mapping)是绘制复杂场景真实感图形最为常用的技术,它可以通过纹理来表达表面丰富的几何细节和光照细节,甚至可以通过映射后纹理的变形来表达物体的几何形状:在未增加物体多边形数情况下,增强了物体的真实感效果。...转载 2018-05-29 12:02:17 · 1724 阅读 · 0 评论 -
图像颜色空间
色彩空间指的是组织色彩的特定方式。一个色彩空间实际上由两样东西构成:颜色模型(acolor model)和映射函数(a mapping function)。我们之所以需要颜色模型是因为它能代表元组代表像素的值。而映射函数将颜色映射到可以被代表的所有颜色的集合。RGB颜色空间 这可能是用的最广的颜色空间。R、G、B分别代表红色(RED)、绿色(GREEN)、蓝色(BLUE)。在这个颜...原创 2018-05-29 15:00:33 · 396 阅读 · 0 评论 -
ios判断图片格式类型
转载目的:记录bitmap 类型的判断 1、方式一[objc] view plain copy- (NSString *)contentTypeForImageData:(NSData *)data { uint8_t c; [data getBytes:&c length:1]; switch (c) { case 0xFF:...转载 2018-05-29 15:13:07 · 1096 阅读 · 0 评论 -
UIView在AutoLayout下的布局过程
使用 Auto Layout 将 View 显示在屏幕上需要的经过三个步骤。更新约束(updateConstraints)通过约束关系计算出center和bounds对subviews进行布局(layoutSubViews)将布局好的view显示到屏幕(drawRect)与之相关的方法有如下八个。setNeedsUpdateConstraints:将 view 标记为需要更新约束,并在稍后触发up...转载 2018-07-10 17:54:52 · 522 阅读 · 0 评论 -
shouldRasterize(光栅化)
shouldRasterize(光栅化)是比较特别的一种离屏渲染:光栅化概念:将图转化为一个个栅格组成的图象。光栅化特点:每个元素对应帧缓冲区中的一像素。 shouldRasterize = YES 在其他属性触发离屏渲染的同时,会将光栅化后的内容缓存起来,如果对应的layer及其sublayers没有发生改变,在下一帧的时候可以直接复用。shouldRasterize = ...转载 2018-05-29 11:53:48 · 2134 阅读 · 0 评论 -
ImagIO图片decode
iOS从磁盘加载一张图片,使用UIImageVIew显示在屏幕上,需要经过以下步骤:1. 从磁盘拷贝数据到内核缓冲区2. 从内核缓冲区复制数据到用户空间3. 生成UIImageView,把图像数据赋值给UIImageView4. 如果图像数据为未解码的PNG/JPG,解码为位图数据5. CATransaction捕获到UIImageV...转载 2018-06-03 10:18:40 · 604 阅读 · 0 评论 -
IOS Quartz 各种绘制图形用法---实现画图片、写文字、画线、椭圆、矩形、棱形等
转 :http://blog.youkuaiyun.com/zhibudefeng/article/details/8463268/- (void)drawRect:(CGRect)rect { CGContextRef context = UIGraphicsGetCurrentContext(); /*NO.1画一条线转载 2016-08-02 18:21:23 · 1763 阅读 · 0 评论 -
理解UIView的绘制
源 :http://m.blog.youkuaiyun.com/majiakun1/article/details/73421480 苹果官方给出的最佳帧率是:60fps,也就是1帧不丢,当然这是理想中的绝佳的体验。这个60fps改怎么理解呢?一般来说如果帧率达到25+fps,人眼就基本感觉不到停顿了,因此,如果你能让你ios程序稳定的保持在30fps已经很不错了,注意转载 2017-07-11 17:52:25 · 533 阅读 · 0 评论 -
图像绘制与离屏渲染
目录0 iOS 图片显示原理....11什么是离屏渲染....22哪些操作会触发离屏渲染?.33 UIImageView...34 圆角处理....35 CPU 限制 VS GPU 限制....46异步绘图....57 CALayer.5参考资源....5 0 iOS 图片显示原理 iOS从磁盘加载原创 2017-07-04 18:33:15 · 2478 阅读 · 0 评论 -
iOS图像解码
一、解码方式:1、CGContextDrawImage方式(CoreGraphics) 它接受一个原始的位图参数 imageRef ,最终返回一个新的解压缩后的位图 newImage ,中间主要经过了以下三个步骤:使用 CGBitmapContextCreate 函数创建一个位图上下文;使用 CGContextDrawImage 函数将原始位图绘制到上下文中;使用 CGB原创 2017-07-05 18:40:37 · 3191 阅读 · 0 评论