我正在使用新的网络音频api处理html5音频应用程序,我需要的是一个“钢琴曲”,一个用户可以在大多数音乐中使用的键盘网格生产软件,我正在考虑两种方式来创建这个。用html/Javascript渲染大型钢琴
- 创建一个大的HTML表并创建标记细胞内画出音符
- PRO音符操作很简单,因为我们与html元素工作,并可以利用他们的活动和方法。
- CON我做了一些使用巨大表格的项目,而且我的经验使用这些元素时,浏览器会变得很慢。
- 创建画布渲染电网,并指出
- PRO可能会更快渲染,如果相比于庞大的表与一些智能缓存
- CON将需要更多的努力,使注意操作工作。
- CON仍然滚动一个巨大的图像。
我需要使用最方便的资源,因为音频的呈现不应该由一个缓慢的响应接口的影响,用户应该能够给pianoroll内滚动,没有任何毛刺的方法。
我可以创建一个具有视口大小的画布,并让它在用户滚动时呈现,我不知道这是否会更快,还有更小的画布,但需要更多的渲染。 对于表格,我可以使用固定的单元格放置(addChild,innerHTML)时,它们必须显示,但不会有任何平滑的滚动,因为它只能通过网格大小滚动(不是一个真正的大问题,如果它足够快),并且还需要比静态表更多的重新渲染。
有什么我忽略了,哪个解决方案是最资源友好?
矢量图形总是第三种选择(http://raphaeljs.com/非常好)。另外,也许有一种使用HTML的方法,但没有表格?带有背景图像的容器的线条,以及带有左侧和顶部CSS样式的标签的注释? – abesto 2012-03-16 22:17:20