【发布时间】:2011-09-26 16:33:42
【问题描述】:
什么是getContext() 方法以及绘图上下文究竟是什么?为什么我们总是将字符串 2d 传递给 getContext() 方法?
【问题讨论】:
标签: html canvas html5-canvas
什么是getContext() 方法以及绘图上下文究竟是什么?为什么我们总是将字符串 2d 传递给 getContext() 方法?
【问题讨论】:
标签: html canvas html5-canvas
上下文是一种选择你要对画布做什么的方法。
目前您可以将 getContext 用于 2d (2dcanvas) 或 3d (WebGL)。
HTML5 Specification 说关于 getContext : “返回一个对象,该对象公开用于在画布上绘图的 API。第一个参数指定所需的 API。后续参数由该 API 处理。”
您可以在此处找到每个 API 的规范: https://html.spec.whatwg.org/multipage/canvas.html#dom-canvas-getcontext
很高兴知道“webgl”是 API 的正确名称,但目前,由于它是实验性的,您应该使用“experimental-webgl”开始创建 WebGL 内容
【讨论】:
在计算机图形学中,绘图上下文是一种抽象(类/对象),它封装了您如何绘制内容。
在 100k 英尺的高度,计算机图形是将绘图命令转换为像素(图像)。你如何从命令到像素是图形管道的全部内容(非常无聊和深刻的主题)。绘图上下文公开绘图方法和属性以实现此目的。
绘图命令示例:drawLine、drawPath、drawRect(你懂的)。
绘图属性示例:填充颜色、描边颜色、描边样式、字体大小、剪切区域等
在 web 的上下文中(请原谅双关语),您有两个绘图上下文 - 用于 2d 绘图的 canvas 和用于 3d 绘图的 webgl。
【讨论】: