canvas标签如何在HTML5中受益?

Sub*_*bbu 5 html5

我是初级开发人员,我无法理解canvas标签对我们有什么好处?我阅读了很多文章,但是我无法从canvas标签中获得根本好处.

sle*_*man 5

想想canvas和svg之间的区别,就像Photoshop和Illustrator(或者你的OSS人员的Gimp和Inkscape)之间的区别.一个处理位图和另一个矢量艺术.

使用画布,由于您使用位图绘图,因此可以轻松涂抹,模糊,刻录,躲避图像.但由于它是位图,因此您无法轻松绘制线条,然后决定重新定位线条.您需要删除旧行,然后绘制一个新行.

使用svg,由于您正在绘制矢量,因此您可以轻松地移动,缩放,旋转,重新定位,翻转图形.但由于它是矢量,因此无法根据线条粗细轻松模糊边缘,也无法将红色圆圈无缝融合成蓝色方块.您需要通过在对象之间绘制中间多边形来模拟模糊.

有时他们的用例重叠.就像很多人使用canvas来做简单的线条图并在javascript中跟踪对象作为数据结构.但实际上,它们都有不同的用途.如果你试图在画布上用纯javascript实现通用矢量绘图,我怀疑你比使用svg更快,这很可能是在C中实现的.