• SVG和canvas的区别


    1、Canvas 是用JavaScript 操作动态生成的, SVG 则是使用XML静态描述生成的; 
    2、Canvas 基于位图,简单来说就是图片放大会影响到显示的效果,造成不好的影响,SVG 基于矢量图,图形放大不会影响到显示效果。 
    3、发生修改事件的时候,canvas必须重绘,SVG不需要。 

    Canvas 

    • 依赖分辨率 
    • 不支持事件处理器 
    • 弱的文本渲染能力 
    • 能够以 .png 或 .jpg 格式保存结果图像 
    • 最适合图像密集型的游戏,其中的许多对象会被频繁重绘 
    • Canvas 是逐像素进行渲染的。

    SVG

    • 不依赖分辨率 
    • 支持事件处理器 
    • 最适合带有大型渲染区域的应用程序(比如谷歌地图) 
    • 复杂度高会减慢渲染速度(任何过度使用 DOM 的应用都不快) 
    • 不适合游戏应用

    其实并一定Canvas 或 SVG 哪个更好,只是分别适用的场合不同,比如Canvas做应用程序或游戏的较多,SVG做大型的 例如世界地图等较多。

  • 相关阅读:
    Linux中find常见用法示例
    PHP写的异步高并发服务器,基于libevent
    Prototype原型模式
    抽象工厂模式
    工厂方法模式
    简单工厂模式
    记一次皮肤过敏
    Thread类线程结束会唤醒使用其对象做锁而睡眠的线程
    位运算符
    逻辑运算符
  • 原文地址:https://www.cnblogs.com/lmjZone/p/9435646.html
Copyright © 2020-2023  润新知