新的 HTML5 Canvas API 支持

Posted

技术标签:

【中文标题】新的 HTML5 Canvas API 支持【英文标题】:New HTML5 Canvas API support 【发布时间】:2012-11-02 22:52:01 【问题描述】:

我发现了几篇关于 html5 Canvas API 中的新功能的帖子,例如路径原语或命中区域。 当前的规范(4.8.11)似乎具有以下功能: http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#hit-regions

虽然我的 Chrome 23.0.1271.64 中的 context.addHitRegion(上下文是 canvas2d 上下文)返回未定义(我也无法创建路径原语)。

有人知道这些功能何时实施(他们的公告是从 3 月开始的,所以已经 8 个月了)?

我可以在某些浏览器的某些 beta 版本中测试它们吗(最好是在 linux 下)?

【问题讨论】:

只是一个评论,而不是一个答案:在你链接到的文档的边缘,“实施状态”假装什么都没有,不管是什么浏览器。 谢谢!我没有注意到它,但也许可以用一些不稳定的 chrome 或其他浏览器分支来测试它?有没有网站告诉特定浏览器中规范的哪一部分正在开发中? 我目前正在尝试我所知道的一切,但没有任何结果......这个问题可能会以过于本地化(短暂)而结束,但任何记录在案的答案都会非常有趣...... 【参考方案1】:

暂时没有。

大约 1-2 个月前,我询问了 Chrome 团队和 Firefox 团队,但他们都没有具体的时间表。这似乎还不是优先事项。

在 10 月 28 日我与 FF 人员的电子邮件通信中,他们回复:

我假设您指的是 Path / Pattern 对象和相关更改;有-AFAIK-没有立即实施它们的计划。最近进入 2D 画布实现的大部分工作都是重构;特别是,我们曾经有两个独立的实现,其中一个已在几周前被删除。

【讨论】:

如果你想要路径和命中区域,你可以使用 SVG 而不是 canvas,所以我猜在不久的将来这将保持低优先级。 但是 SVG 不是硬件加速的,不能像 canvas 那样处理这么多的图形,我错了吗? 你说得对,danilo2,快速命中测试是将这些新 Path 对象引入 Canvas 规范的主要原因之一。 @danilo2 我很确定 SVG 在与canvas 硬件加速的所有相同平台上都是硬件加速的,这是 18 个月前的 IE blog post,当时所有实现都处于早期。如果您有更多最新信息,请分享。 无论加速如何,与在画布上绘制的路径相比,SVG 对象都包含大量开销。有一百万条性能测试/文章显示了差异,即jsperf.com/html-vs-svg-vs-canvas/2 和joeloughton.com/blog/web-applications/svg-vs-canvas-performance

以上是关于新的 HTML5 Canvas API 支持的主要内容,如果未能解决你的问题,请参考以下文章

Canvas - Web API

HTML5的新增功能有哪些?

HTML5 Canvas

HTML5中的Canvas API

html5的设计目的

通过HTML5的getUserMedia实现拍照功能