APIs - 蓝紫开发接口

目前,蓝紫对 2D 渲染(CanvasRenderingContext2D)没有做过多的封装和扩展,我们可以使用原生 API 进行二维(甚至三维)绘图和渲染(这些 API 已经设计的非常棒了),特别适合矢量图形绘制,当然,也可以进行三维渲染。可参考向导程序 函数曲线绘制,该程序使用的就是 canvas2d 进行的渲染。

一、初始化
const canvas = Lan.canvas2d(1800, 1200, {options...});

我们可以在 options 里传入一些配置参数:

二、接口属性 • CONTEXT

原生 CanvasRenderingContext2D 对象。

三、接口方法 • clear([color])

重置 transformglobalAlpha 以及 globalCompositeOperation 并执行图像清除操作。如果没有提供 color 参数,画布会被清除为全透明。这里的 color 可以是字符串,比如 'black''#fff''rgba(255,255,255,.5)',也可以是数组或对象,比如 [255, 0, 0]{r:255, a:.5},同时,它也可以是一个函数,其形式如下:

(px, py) => {
  var r = 0, g = 0, b = 0; // calculate color components
  return [r, g, b];
};

传入像素坐标,返回颜色值,比如 [128, 255, 255]{r:255, a:128}

• measureText(text[, font])

测量文字的各种尺寸,返回 TextMetrics 对象。其中 font 参数可选。

• circle(x, y, radius)

缺省的 arc 函数至少需要 5 个参数,不方便画圆。