首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
iOS 2D绘图详解(Quartz 2D)之Transform(CTM,Translate,Rotate,Scale)
】的更多相关文章
iOS 2D绘图详解(Quartz 2D)之Transform(CTM,Translate,Rotate,Scale)
前言:Quartz默认采用设备无关的user space来进行绘图,当context(画板)建立之后,默认的坐标系原点以及方向也就确认了,可以通过CTM(current transformation matrix)来修坐标系的原点.从数组图像处理的角度来说,就是对当前context state乘以一个状态矩阵.其中的矩阵运算开发者可以不了解. 以下,会一一个Demo图解,坐标系的位移,旋转,sacle 最初的状态和代码 新建一个CustomView,.m文件 @implementation Cu…
iOS 2D绘图详解(Quartz 2D)之路径(点,直线,虚线,曲线,圆弧,椭圆,矩形)
前言:一个路径可以包含由一个或者多个shape以及子路径subpath,quartz提供了很多方便的shape可以直接调用.例如:point,line,Arc(圆弧),Curves(曲线),Ellipse(椭圆),矩形(Rectangle). 对这些path可以进行stroke(描边),也可以进行fill(填充).也可以利用path对一个区域进行截取(clip). 例如,使用截取圆形区域 如果对Quartz的基本概念仍然不清楚的,强烈建议看下我之前的这篇文章,不然不能理解 iOS 2D绘图详解(…
iOS 2D绘图详解(Quartz 2D)之概述
前言:最近在研究自定义控件,由于想要彻底的定制控件的视图还是要继承UIView,虽然对CALayer及其子类很熟练,但是对Quartz 2D这个强大的框架仍然概念模棱两可.于是,决定学习下,暂定7篇文章讲解,会写一些Demo. 官方文档 本文的代码Demo在最后一部分 Quartz 2D用来干嘛的? Quartz 2D属于Core Graphics(所以大多数相关方法的都是以CG开头),是iOS/Mac OSX 提供的在内核之上的强大的2D绘图引擎,并且这个绘图引擎是设备无关的.也就是说,不用关…
iOS 2D绘图详解(Quartz 2D)之阴影和渐变(Shadow,Gradient)
前言:这个系列写道这里已经是第五篇了,本文会介绍下阴影和渐变的基础知识,以及一些基本的Demo Code展示,应该还会有两篇,介绍下Bitmap绘制以及Pattern等知识. Shadow shadow(阴影)的目的是为了使UI更具有立体感,如图 shadow主要有三个影响因素 x off-set 决定阴影沿着x的偏移量 y off-set 决定阴影沿着y的偏移量 blur value 决定了阴影的边缘区域是不是模糊的 其中不同的blur效果如图 注意 Shadow也是绘制状态相关的,意味着如果…
iOS开发 绘图详解
Quartz概述 Quartz是Mac OS X的Darwin核心之上的绘图层,有时候也认为是CoreGraphics.共有两种部分组成 Quartz Compositor,合成视窗系统,管理和合成幕后视图影像来建立Mac OS X使用者接口. Quartz 2D,是ios和mac os x环境下的二维绘图引擎. 涉及内容包括:基于路径的绘图,透明度绘图,遮盖,阴影,透明层,颜色管理.防锯齿渲染,生成PDF,以及PDF元数据相关处理. 视图绘制 在ios上,所有的绘制,无论是否采用O…
iOS 2D绘图详解(Quartz 2D)之Bitmap
什么是Bitmap? Bitmap叫做位图,每一个像素点由1-32bit组成.每个像素点包括多个颜色组件和一个Alpha组件(例如:RGBA). iOS中指出如下格式的图片 JPEG, GIF, PNG, TIF, ICO, GMP, XBM,和 CUR.其他格式的图片要给Quartz2D传入图片的数据分布信息. 数据类型CGImageRef 在Quartz中,Bitmap的数据由CGImageRef封装.由以下几个函数可以创建CGImageRef对象 CGImageCreate - 最灵活,但…
iOS 2D绘图详解(Quartz 2D)之路径(stroke,fill,clip,subpath,blend)
Stroke-描边 影响描边的因素 线的宽度-CGContextSetLineWidth 交叉线的处理方式-CGContextSetLineJoin 线顶端的处理方式-CGContextSetLineCap 进一步限制交叉线的处理方式 -CGContextSetMiterLimit 是否要虚线-Line dash pattern 颜色控件-CGContextSetStrokeColorSpace 画笔颜色-CGContextSetStrokeColor/CGContextSetStrokeCol…
iOS中-Qutarz2D详解及使用
在iOS中Qutarz2D 详解及使用 (一)初识 介绍 Quartz 2D是二维绘图引擎. 能完成的工作有: 绘制图形 : 线条\三角形\矩形\圆\弧等 绘制文字 绘制\生成图片(图像) 读取\生成PDF 截图\裁剪图片 自定义UI控件 - - 在iOS中最主要的作用是:自定义View 废话不多说了,直接开始学习它吧. 从概念开始 首先,必须清楚 图形上下文 的概念 图形上下文(Graphics Context)是一个CGContentRef类型的数据:可以帮你把你要显示 的图形显示到你指定的…
【转】Android Canvas绘图详解(图文)
转自:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2012/1212/703.html Android Canvas绘图详解(图文) 泡在网上的日子 发表于 2012-12-12 20:29 第 63165 次阅读 Canvas,android 15 Android中使用图形处理引擎,2D部分是android SDK内部自己提供,3D部分是用Open GL ES 1.0.今天我们主要要了解的是2D相关的,如果你想看3D的话那么可…
转载]IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本 )
原文地址:IOS LBS功能详解[0](获取经纬度)[1](获取当前地理位置文本作者:佐佐木小次郎 因为最近项目上要用有关LBS的功能.于是我便做一下预研. 一般说来LBS功能一般分为两块:一块是地理定位,就是获取当前精度.纬度和地理位置的功能,这一部分功能主要用到CoreLocation.Frameworks.一部分就是显示地图信息.丰富地图内容等,这一部分主要用到MapKit.Frameworks.以上这几个功能的测试最好都要在真机上进行.模拟器上定位一般会在Apple的加州总部. 首先介绍…