1. 渲染框架概览

该图中紫色的部分即为 Cocoa 渲染框架:

_images/core_architecture.png

可以看到,Cocoa 的绘图 API 基于 Skia 的 CanvasKit 模块,光栅化和渲染 API 则由 Glamor Renderer 实现。CanvasKit 可以独立运行,但是当执行屏上渲染任务时, CanvasKit 必须和 Glamor 协同工作,前者产生绘图指令,后者根据绘图指令和图层树进行光栅化。

因而,Glamor 和 CanvasKit 是相互配合的。下一节中,我们将首先介绍 CanvasKit, 接着便主要介绍 Glamor,最后我们会介绍 CanvasKit 和 Glamor 如何配合使用。