首页 > 有关Canvas,为什么要费劲用JS写那么多代码绘制一个图片啊,直接用一张图不好吗

有关Canvas,为什么要费劲用JS写那么多代码绘制一个图片啊,直接用一张图不好吗

Canvas绘制个简单的图片都好多代码,为什么要用Canvas啊,为啥不直接用一张图片呢


合成图片的话用canvas挺方便的


可重用啊...


我用 canvas 写的 demo,你都能用图片做出来,我服。。
https://github.com/hanzichi/hanzichi.github.io


图片是死的,gif是半活的但是不能跟用户交互,Canvas可以跟用户交互,而且绝非画张图片那么简单,可以实现强大的图形效果(包括3D)。这绝对不是一张图片能做到的。


某件事物既然存在了,就有存在的价值。

canvas属于html5的一大特性,必有其需求的地方。我说一下,我的一个项目。
项目主要需求:图像OCR识别,将图像识别的结果在前段显示出来。识别的结果是图像中的内容。前段需要将每一个内容,用红色的标注线标识出来。前段获取坐标,然后用什么画线呢?用canvas吧。而专业人士在查看结果的时候,非常的挑剔,他需要将图像放缩移动,而且线框也要精确的放缩移动,并且图像的放大,不要导致线框的放大,也就是说,图像放缩后,线框要重新定位坐标,重新画线。不用canvas,我哪来这么多图像啊。

canvas的用处可以总结如下:

  1. 常用于动态的,具有特效的图像显示。有漫画的感觉。

  2. canvas可以做3D特效

  3. canvas具有画布的功效,可以设计在线画图

  4. canvas很炫。。。


canvas可不是绘画这么简单,而是可以实现交互,比如开发游戏……
这是我开发的吃豆人的游戏:http://passer-by.com/pacman/


如果是画一张一次性的图,当然可以。

但是:

如果图片将来需要调整怎么办,再画一张?如果用Canvas的话,调整一下参数就可以了。

如果要做动画怎么办,画很多张然后定时切换?如果用Canvas的话,编写一段代码逻辑就行了。

另外讲一个故事:

我们曾经的项目组,要做一个图形化显示百分比的效果。类似于一个量筒里装了液体,空时0%,满时100%。于是我一同事让美工画了一百张图,后来我用Canvas给做了,只用了两张图。


好的,那你吧这个用图片做出来,并且鼠标可控
http://codepen.io/zadvorsky/pen/PNXbGo

【热门文章】
【热门文章】