Rasterization,光栅化,又称为栅格化,它用于执行绘图指令生成像素的颜色值。光栅化是渲染流水线中的一个重要环节,但是不同的 UI Toolkit 和不同浏览器渲染引擎使用的光栅化策略并不一样,本文主要讨论各种不同的光栅化策略和它们各自的优劣。

渲染流水线

rasterization_1.png

上图是一个渲染流水线的极简版示意图,适用于大部分的 UI Toolkit 和浏览器渲染引擎,当然实际的细节可能会有出入。

  1. DOM/View - 构建或者改变 DOM 树(UI Toolkit 一般称为 View 或者 Widget);
  2. Style/Layout - 计算样式和重排版(又称为布局);
  3. ize - 图层化,将不同的 DOM/View 子树按一定的规则归属到不同的图层,构建或者更新图层树/列表;
  4. Paint - 绘制图层,输出 DisplayList(2D 绘图
收藏 打印