美文网首页
iOS核心图形

iOS核心图形

作者: dc630f46ee2d | 来源:发表于2018-05-06 16:57 被阅读0次

    1.核心图形在哪里

    核心图形.jpeg
    CoreGraphic 核心图形,又被称为Quartz 2D
    • 2D 绘图引擎 ,同时适用于iOS tvOS和macOS
    • 各个分辨率和不同设备通用

    2.核心图形的主要的类

    个人理解作为一个和设备,分辨率,平台通用的绘图引擎,需要一个类抽象出不同的绘制目标,Graphics Contexts就是因此而建立的类。使用CoreGraphic进行绘图时,首先是创建或者获取图形上下文。
    针对不同的绘图目标,有不同的获取或者创建图形上下文的方式。如Quartz 2D Programming Guide所说。有下面几种上下文。

    1. a View Graphics Context in iOS
    2. a Window Graphics Context
    3. a PDF Graphics Context
    4. Bitmap Graphics Context
      其中,Window Graphics Context用于mac系统,PDF Graphics Context用于在pdf文件中,暂时不是我的学习目标,我们只需要关注a View Graphics Context in iOSBitmap Graphics Context

    a View Graphics Context in iOS

    在iOS中要绘制图形到屏幕上,需要创建UIView对象,实现它的drawRect:方法,drawRect:方法将在视图显示或者内容更新的时候调用。不应该自己调用drawRect:方法,如果需要触发系统调用,可以使用setNeedsDisplay来标记让系统调用 drawRect:

    • 将在视图显示
      调用时机如下
    ViewController ViewWillAppear
    View drawRect
    ViewController ViewDidAppear
    
    • 内容更新


      屏幕快照 2018-03-23 上午10.21.56.png

    在调用drawRect:方法之前,系统会做一些图形环境配置工作让你的代码可以立刻执行绘图工作,其中包括系统自动创建一个图形上下文。我们只需要通过UIKit的方法UIGraphicsGetCurrentContext来获取图形上下文就可以了

    • 绘制能力

    Bitmap Graphics Context

    相关文章

      网友评论

          本文标题:iOS核心图形

          本文链接:https://www.haomeiwen.com/subject/dsrvqftx.html