H5 Canvas vs. SVG

HTML 5 Canvas vs. SVG

Canvas 和 SVG 都允许您在浏览器中创建图形,但是它们在根本上是不同的。

SVG

SVG 是一种使用 XML 描述 2D 图形的语言。

SVG 基于 XML,这意味着 SVG DOM 中的每个元素都是可用的。您可以为某个元素附加 JavaScript 事件处理器。

在 SVG 中,每个被绘制的图形均被视为对象。如果 SVG 对象的属性发生变化,那么浏览器能够自动重现图形。

Canvas

Canvas 通过 JavaScript 来绘制 2D 图形。

Canvas 是逐像素进行渲染的。

在 canvas 中,一旦图形被绘制完成,它就不会继续得到浏览器的关注。如果其位置发生变化,那么整个场景也需要重新绘制,包括任何或许已被图形覆盖的对象。

Canvas 与 SVG 的比较

下表列出了 canvas 与 SVG 之间的一些不同之处。

Canvas

  • 依赖分辨率
  • 不支持事件处理器
  • 弱的文本渲染能力
  • 能够以 .png 或 .jpg 格式保存结果图像
  • 最适合图像密集型的游戏,其中的许多对象会被频繁重绘
  • 不依赖分辨率
  • 支持事件处理器
  • 最适合带有大型渲染区域的应用程序(比如谷歌地图)
  • 复杂度高会减慢渲染速度(任何过度使用 DOM 的应用都不快)
  • 不适合游戏应用

SVG

时间: 2024-12-19 08:51:30

H5 Canvas vs. SVG的相关文章

canvas与svg区别

HTML5新特性之五--SVG绘图   Canvas绘图 SVG绘图 绘图类型 位图 矢量图 缩放 失真 不失真 颜色细节 丰富 不够丰富 应用领域 照片.游戏 统计图.图标.地图 内容 JS绘制 每个图形都是标签 事件绑定 不方便 方便 Scalable Vector Graphiph,可缩放的矢量图,此技术在2000年就已经存在了,独立于网页的一门技术:HTML5之后,纳入了HTML5标准标签库,并进行了一定的瘦身. SVG技术的使用方法: (1)HTML5之前的使用方法: SVG标签不属于

【HTML5】Canvas和SVG的区别

* SVG SVG 是一种使用 XML 描述 2D 图形的语言. SVG 基于 XML,这意味着 SVG DOM 中的每个元素都是可用的.您可以为某个元素附加 JavaScript 事件处理器. 在 SVG 中,每个被绘制的图形均被视为对象.如果 SVG 对象的属性发生变化,那么浏览器能够自动重现图形. * Canvas Canvas 通过 JavaScript 来绘制 2D 图形. Canvas 是逐像素进行渲染的. 在 canvas 中,一旦图形被绘制完成,它就不会继续得到浏览器的关注.如果

HTML 5 Canvas vs. SVG(摘抄)

摘抄自:http://www.w3school.com.cn/html5/html_5_canvas_vs_svg.asp 如果之前知道的话,理解起来就不会那么困难了,就能很快看懂代码,然后从模仿到创新.虽然技术的确需要脑力,但是积累多了 也会有不同的. Canvas 和 SVG 都允许您在浏览器中创建图形,但是它们在根本上是不同的. SVG SVG 是一种使用 XML 描述 2D 图形的语言. SVG 基于 XML,这意味着 SVG DOM 中的每个元素都是可用的.您可以为某个元素附加 Jav

Canvas 和 SVG 的区别

SVG可缩放矢量图形(Scalable Vector Graphics)是基于可扩展标记语言(XML),用于描述二维矢量图形的一种图形格式.SVG是W3C制定的一种新的二维矢量图形格式,也是规范中的网络矢量图形标准.SVG严格遵从XML语法,并用文本格式的描述性语言来描述图像内容,因此是一种和图像分辨率无关的矢量图形格式. 什么是SVG? SVG 指可伸缩矢量图形 (Scalable Vector Graphics) SVG 用来定义用于网络的基于矢量的图形 SVG 使用 XML 格式定义图形

H5 canvas绘制出现模糊的问题

在之前做移动端小游戏幸运转盘.九宫格转盘,使用到了 canvas ,也是第一次在项目中使用 canvas 来实现. 近期测试人员反应 canvas 绘制的内容太模糊,心想着用 canvas 绘制出来的怎么会模糊,先前也有考虑到适配不同尺寸的移动设备,担心直接使用 img 或者设置 background 会使图片拉伸而变得模糊,所以使用 canvas 来绘制转盘与九宫格,精确的计算每个物体所在的坐标以及尺寸绘制出来的,怎么会模糊. 然而将绘制的内容与页面中的其他文字或者图片作对比后,发现使用 ca

canvas和SVG分析比较

Canvas 和 SVG 之间的主要相似点为: 它们都是有效的图形工具,可用来快速创建在网页中显示的轻型图形:它们都使用 JavaScript 和 HTML:它们都遵守万维网联合会 (W3C) 标准. 这两种技术之间的主要区别是: Canvas 是基于像素的即时模式图形系统,最适合较小的表面或较大数量的对象,canvas不支持鼠标键盘等事件 SVG 是基于形状的保留模式图形系统,更加适合较大的表面或较小数量的对象.Canvas 和 SVG 在修改方式上还存在着不同.绘制 Canvas 对象后,不

Canvas VS . SVG

SVG SVG 是一种使用 XML 描述 2D 图形的语言. SVG 基于 XML,这意味着 SVG DOM 中的每个元素都是可用的.您可以为某个元素附加 JavaScript 事件处理器. 在 SVG 中,每个被绘制的图形均被视为对象.如果 SVG 对象的属性发生变化,那么浏览器能够自动重现图形. SVG 的优势 与其他图像格式相比(比如 JPEG 和 GIF),使用 SVG 的优势在于: SVG 图像可通过文本编辑器来创建和修改 SVG 图像可被搜索.索引.脚本化或压缩 SVG 是可伸缩的

h5+canvas绘制动画时钟

h5+canvas绘制动画时钟 效果图,这个是截图,可以动的, 代码如下: <!DOCTYPE html><html><head><title>动画效果</title></head> <body> <canvas id="anm" width="600" height="600" style="border:1px solid gray"

HTML5中Canvas与SVG的画图原理比较

canvas 与 SVG都能够使你在浏览器中画图,但它们的基本原理不同.鞍山治疗白癜风多少钱www.pfk0412.com SVG SVG是一种在XML中描述二维图形的语言. SVG是基于XML的,意味着在SVG DOM内每一个元素都是可用的.你可以为每一个元素增加JS事件处理器. 在SVG中,每一个图形被记作一个对象.如果一个SVG对象的属性发生改变,浏览器可以自动重新生成图形. Canvas Canvas能够在fly上画2D图形(使用JS) Canvas能够按照像素重新生成. 在Canvas