在swift中使用Quartz 2D

在swift中使用Quartz 2D

在iOS中,绘图技术主要有UIKit、Quartz 2D、Core Animation和OpenGL ES。其中,Core Animation提供动画实现技术,OpenGL ES是针对OpenGL嵌入式设备实现的简化版本,它可以绘制高性能的2D和3D图形。UIKit是高级别的图形接口,它的API是基于Object-C和swift,它能够实现绘图、文字、动画和图像等内容。Quartz 2D是iOS和Mac OS环境下的2D绘图引擎。

填充矩形

我们可以自定义一个view,并在draw(_ rect: CGRect)中实现:

    override func draw(_ rect: CGRect) {
            //为当前的图形上下文设置要填充颜色
        UIColor.brown.setFill()
        //填充颜色
        UIRectFill(rect)
    }

现在,如果我们希望在该view中添加一个矩形,并且矩形已蓝色描边:

    override func draw(_ rect: CGRect) {
        //为当前的图形上下文设置要填充颜色
        UIColor.brown.setFill()
        //填充颜色
        UIRectFill(rect)
        // 设置矩形的frame
        let frame = CGRect(x: 10, y: 10, width: 100, height: 200)
        //设置边框的颜色(如果不设置,默认是黑色)
        UIColor.blue.setStroke()
        //绘制矩形
        UIRectFrame(frame)
    }

绘制图像和文本

我们知道,在iOS中,我们可以通过UIImageView和UILabel两个标准控件来实现图像和文字的绘制。实际上,我们呢也可以通过Image和String来实现同样的功能。


   转载规则


《在swift中使用Quartz 2D》 刘星星 采用 知识共享署名 4.0 国际许可协议 进行许可。
 上一篇
Git系统总结学习(一) Git系统总结学习(一)
基本概念使用Git时,对于任何一个文件,在 Git 内都只有三种状态:已提交 (committed),已修改(modified)和已暂存(staged)。已提交表示该文件已经被安全地保存在本地数据库中了;已修改表示修改了某个文件,但还没
2017-06-01
下一篇 
iOS常用宏定义 iOS常用宏定义
定义一个宏使用两个”##“来定义一个宏#define LXWeakSelf(type) __weak typeof(type) weak##type = type;- (void)viewDidLoad { [super v
2017-05-01
  目录