HTMLCanvasElement - Web API 接口参考 编辑
HTMLCanvasElement
接口提供用于操纵<canvas>
元素的布局和表示的属性和方法。 HTMLCanvasElement
接口还继承了HTMLElement
接口的属性和方法。
<div id="interfaceDiagram" style="display: inline-block; position: relative; width: 100%; padding-bottom: 20%; vertical-align: middle; overflow: hidden;"><svg style="display: inline-block; position: absolute; top: 0; left: 0;" viewbox="-50 0 600 120" preserveAspectRatio="xMinYMin meet"><a xlink:href="/wiki/zh-CN/docs/Web/API/EventTarget" target="_top"><rect x="1" y="1" width="110" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="56" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">EventTarget</text></a><polyline points="111,25 121,20 121,30 111,25" stroke="#D4DDE4" fill="none"/><line x1="121" y1="25" x2="151" y2="25" stroke="#D4DDE4"/><a xlink:href="/wiki/zh-CN/docs/Web/API/Node" target="_top"><rect x="151" y="1" width="75" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="188.5" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">Node</text></a><polyline points="226,25 236,20 236,30 226,25" stroke="#D4DDE4" fill="none"/><line x1="236" y1="25" x2="266" y2="25" stroke="#D4DDE4"/><a xlink:href="/wiki/zh-CN/docs/Web/API/Element" target="_top"><rect x="266" y="1" width="75" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="303.5" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">Element</text></a><polyline points="341,25 351,20 351,30 341,25" stroke="#D4DDE4" fill="none"/><line x1="351" y1="25" x2="381" y2="25" stroke="#D4DDE4"/><a xlink:href="https://developer.mozilla.org/wiki/zh-CN/docs/Web/API/HTMLElement" target="_top"><rect x="381" y="1" width="110" height="50" fill="#fff" stroke="#D4DDE4" stroke-width="2px" /><text x="436" y="30" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">HTMLElement</text></a><polyline points="491,25 501,20 501,30 491,25" stroke="#D4DDE4" fill="none"/><line x1="501" y1="25" x2="509" y2="25" stroke="#D4DDE4"/><line x1="509" y1="25" x2="509" y2="90" stroke="#D4DDE4"/><line x1="509" y1="90" x2="492" y2="90" stroke="#D4DDE4"/><a xlink:href="/wiki/zh-CN/docs/Web/API/HTMLCanvasElement" target="_top"><rect x="321" y="65" width="170" height="50" fill="#F4F7F8" stroke="#D4DDE4" stroke-width="2px" /><text x="406" y="94" font-size="12px" font-family="Consolas,Monaco,Andale Mono,monospace" fill="#4D4E53" text-anchor="middle" alignment-baseline="middle">HTMLCanvasElement</text></a></svg></div>
a:hover text { fill: #0095DD; pointer-events: all;}
属性
从其父项HTMLElement
继承属性。
HTMLCanvasElement.height
- 是一个正整数,反映了
<canvas>
元素的height
HTML属性,以CSS像素表示。 如果未指定属性,或者将其设置为无效值(例如负数),则使用默认值150。 HTMLCanvasElement.width
- 是一个正整数,反映了
<canvas>
元素的width
HTML属性,以CSS像素表示。 如果未指定属性,或者将其设置为无效值(例如负数),则使用默认值300。 HTMLCanvasElement.mozOpaque
- 是反映
<canvas>
元素的moz-opaque
属性的Boolean
。 它让画布知道半透明性是否会成为一个因素。 如果画布知道没有透明感,则可以优化绘画性能。 仅基于Mozilla的浏览器支持此功能, 可以使用标准化的canvas.getContext('2d', { alpha: false })
代替。 HTMLCanvasElement.mozPrintCallback
- 是最初为空的函数。 Web内容可以将其设置为JavaScript函数,该函数将在打印页面时重新绘制画布时调用。 调用时,回调将传递一个实现了MozCanvasPrintState接口的“ printState”对象。 回调可以从printState对象获取要绘制的上下文,然后必须在完成时在其上调用done() 。
mozPrintCallback
的目的是在所使用打印机的分辨率下获得较高分辨率的画布渲染。 请参阅此博客文章。
方法
从其父项HTMLElement
继承方法。
HTMLCanvasElement.captureStream()
- 返回
CanvasCaptureMediaStream
,它是对画布表面的实时视频捕获。 HTMLCanvasElement.getContext()
- 返回画布上的绘图上下文;如果不支持上下文ID,则返回null。 绘图上下文可让您在画布上绘图。 调用getContext传入
"2d"
可以返回一个CanvasRenderingContext2D
对象,也可以传入"webgl"
(或"experimental-webgl"
)返回一个WebGLRenderingContext
对象。 此上下文仅在实现WebGL的浏览器上可用。 HTMLCanvasElement.toDataURL()
- 返回一个数据URL,该URL包含由类型参数指定的格式的图像(默认为
png
)。 返回的图像分辨率为96dpi。 HTMLCanvasElement.toBlob()
- 创建一个
Blob
对象,表示canvas中包含的图像; 该文件可以由用户代理决定是否缓存在磁盘上或存储在内存中。 HTMLCanvasElement.transferControlToOffscreen()
- 将控制权转移到主线程或辅助线程上的
OffscreenCanvas
对象。 过时的方法
HTMLCanvasElement.mozGetAsFile()
- 返回代表画布中包含的图像的
File
对象; 该文件是基于内存的文件,具有指定的名称。 如果未指定类型,则图像类型为image / png。
事件
使用addEventListener()
监听这些事件。
webglcontextcreationerror
- 如果用户代理无法创建
WebGLRenderingContext
或WebGL2RenderingContext
上下文,则触发该事件。 webglcontextlost
- 如果用户代理检测到与
WebGLRenderingContext
或WebGL2RenderingContext
对象关联的绘图缓冲区已丢失,则触发此事件。 webglcontextrestored
- 如果用户代理为
WebGLRenderingContext
或WebGL2RenderingContext
对象恢复绘图缓冲区,则触发该事件。
规范
Specification | Status | Comment |
---|---|---|
HTML Living Standard HTMLCanvasElement | Living Standard | Primary definition of HTMLCanvasElement . |
Media Capture from DOM Elements HTMLCanvasElement | Working Draft | Adds the method captureStream() . |
浏览器支持
BCD tables only load in the browser
此页面上的兼容性表是根据结构化数据生成的。 如果您想提供数据,请查看https://github.com/mdn/browser-compat-data并向我们发送请求请求
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论