<form id="hz9zz"></form>
  • <form id="hz9zz"></form>

      <nobr id="hz9zz"></nobr>

      <form id="hz9zz"></form>

    1. 明輝手游網中心:是一個免費提供流行視頻軟件教程、在線學習分享的學習平臺!

      HTML5中canvas與SVG有什么區別

      [摘要]今天將和大家分享的是有關JavaScript中canvas與SVG的區別,有一定的參考作用,希望對大家有所幫助【推薦課程:HTML5教程】SVGSVG 是一種使用 XML 描述 2D 圖形的語言,它基于XML也就是我們可以為某個元素附加JavaScript事件處理器,如果SVG 對象的屬性發生變化...
      今天將和大家分享的是有關JavaScript中canvas與SVG的區別,有一定的參考作用,希望對大家有所幫助

      【推薦課程:HTML5教程

      SVG

      SVG 是一種使用 XML 描述 2D 圖形的語言,它基于XML也就是我們可以為某個元素附加JavaScript事件處理器,如果SVG 對象的屬性發生變化,那么瀏覽器能夠自動重現圖形。

      Canvas

      Canvas 通過 JavaScript 來繪制 2D 圖形。它是逐像素進行渲染的,一旦圖形被繪制完成,如果它的位置發生了變化,那么整個場景都需要重新繪制,包括任何或者已經被覆蓋的對象

      SVG與canvas的區別

      (1)SVG是用來描述XML中2D圖形的語言,canvas借助JavaScript動態描繪2D圖形

      (2)SVG可支持事件處理程序而canvas不支持

      (3)SVG中屬性改變時,瀏覽器可以重新呈現它,適用于矢量圖,而canvas不可以,更適合視頻游戲等。

      (4)canvas可以很好的繪制像素,用于保存結果為png或者gif,可做為API容器。

      (5)canvas取決于分辨率。SVG與分辨率無關。

      (6)SVG具有更好的文本渲染,而Canvas不能很好的渲染,渲染中的SVG可能比Canvas慢,特別是應用了大量的DOM。

      (7)畫布更適合渲染較小的區域。SVG渲染更好的更大區域。

      SVG與canvas之間的比較

      SVGcanvas
      可擴展
      不可擴展
      支持DOM和事件 沒有事件支持
      不依賴分辨率 分辨率依賴
      在渲染復雜區域時可能會更慢 不適合較大或復雜的區域
      呈現更好更大的區域(DOM除外) 渲染更小的區域
      更好的矢量圖形 更適合動畫(視頻)和圖像
      不適合API 適合API
      很好地呈現文本 不能很好地呈現文本

      案例分析

      canvas繪制一個圓

      <canvas id="circle"></canvas>
      
      <script type="text/javascript">
      	
      	var circle=document.getElementById("circle");
      	var yuan=circle.getContext("2d");
      	yuan.beginPath();
      	yuan.strokeStyle="pink";
      	yuan.arc(50,50,50,0,Math.PI*2,true);
      	 yuan.stroke();
      </script>

      Image 19.jpg

      可以看出圖片放大時邊框周圍有鋸齒

      SVG繪畫一個圓

      <?xml version="1.0" standalone="no"?>
      <svg width="100%" height="100%" version="1.1">
      <circle cx="100" cy="50" r="40" stroke="pink"
      stroke-width="2" fill="#fff"/>
      </svg>

      Image 20.jpg

      可以看出SVG畫出的圖形放大不會失真。

      總結:以上就是本篇文章的全部內容了,希望通過本篇文章使大家對canvas和SVG的區別有一定的了解。

      以上就是HTML5中canvas與SVG有什么區別的詳細內容,更多請關注php中文網其它相關文章!


      網站建設是一個廣義的術語,涵蓋了許多不同的技能和學科中所使用的生產和維護的網站。




      日韩精品一区二区三区高清