Html5之高級-8 HTML5 SVG(概述、元素)

1、SVG 概述html


SVG 概念web

    - SVG (Scalable Vector Graphics) 是一種使用XML技術描述二維圖形的語言編輯器

    - SVG 可使用三種方式描述二維圖形ide

        - 矢量圖 (vector graphic shapes),例如直線或曲線構成的路徑svg

        - 圖片(p_w_picpaths)url

        - 文本(text)spa


SVG 優點orm

    - SVG 可經過文本編輯器來建立和修改htm

    - SVG 可被搜索、索引、校本化和壓縮blog

    - SVG 可在任何的分辨率下被高質量地打印

    - SVG 可在圖像質量不降低的狀況下被放大


SVG 與 Canvas 的區別

    - SVG 

        - 不依賴分辨率

        - 支持事件處理器

        - 最適合帶有大型渲染區域的應用程序(例如百度地圖)

        - 不適合遊戲

    - Canvas

        - 依賴分辨率

        - 不支持事件處理器

        - 可以以".png"或者".jpg"格式保存結果圖像

        - 最合適圖像密集型的遊戲


SVG 示例

    - 繪製一個黑邊藍底的矩形:

      <svg width="100%" height="300">
          <rect x="100" y="100" width="300" height="100" fill="blue" stroke="black" stroke-width="4" />
      </svg>

        - svg  標籤: 用於嵌入 SVG 圖像

        - rect 標籤: 用於描述該圖形是一個矩形

          x 和 y 屬性: 表示該矩形的左上點的座標值

          stroke 屬性: 表示該矩形的邊框顏色

          stroke-width 屬性: 表示該矩形的邊框寬度


SVG 使用方式

    - 單獨的SVG文件形式

        - 使用 XML 文件定義:

wKiom1b7V4SC5bz9AAApVJ5cRVs086.png

        - 指定特殊的命名空間:

wKiom1b7V5zzzxEPAAAnFquhpww840.png

        - 定義 SVG 與在 HTML 方式相同

    - 使用 svg 標籤嵌入在 HTML 頁面

    - 使用 embed、object 和 iframe 等標籤嵌入在 HTML 頁面中

    - 內嵌在 XHTML 頁面中



2、SVG 元素


SVG 元素種類

    - SVG 預約義元素

        - 矩形元素

        - 圓形元素

        - 橢圓元素

        - 線條元素

        - 折線元素

        - 多邊形元素

    - SVG 特效元素

        - SVG 濾鏡

        - SVG 漸變


SVG 矩形元素

    - SVG 使用 <rect> 標籤來建立矩形,代碼以下:

wKioL1b7XBKDLbFJAABAuYqi9KE251.png

        - rect 的 width 和 height 屬性: 定義矩形的寬度和高度

        - style 屬性用來定義 CSS 屬性

        - CSS 的 fill屬性定義矩形的填充顏色 CSS 的stoke-width屬性定義矩形邊框的寬度

        - CSS 的 stroke 屬性定義矩形邊框的顏色


SVG 圓形元素

    - SVG 使用 <circle> 標籤來建立圓型,代碼以下:

wKiom1b7W8GwcmCOAAA0AfswJKo408.png

        - cx 和 cy 屬性定義圓點的 x 和 y 座標(若是省略cx 和 cy,圓的中心會被設置爲(0,0))

        - r屬性定義圓的半徑


SVG 橢圓元素

    - SVG 使用 <ellipse> 標籤來建立橢圓,代碼以下:

wKioL1b7XNqRlq0bAABCoqUofuw381.png

        - cx 屬性定義圓點的 x 座標

        - cy 屬性定義圓點的 y 座標

        - rx 屬性定義水平半徑

        - ry 屬性定義垂直半徑


SVG 線條元素

    - SVG 使用 <line> 標籤來建立橢圓,代碼以下:

wKiom1b7aZaTluPQAAAy9MxtuVA576.png

        - x1 屬性在 x軸定義線條的開始

        - y1 屬性在 y軸定義線條的開始

        - x2 屬性在 x軸定義線條的結束

        - y2 屬性在 y軸定義線條的結束


SVG 折線元素

    - SVG 使用 <polyline> 標籤來建立橢圓,代碼以下:

wKioL1b7bEHCGy8oAAA2QE7E4U4197.png        - points 屬性用於存儲折線中的起點、折點和終點的 x 和 y 軸座標值

wKiom1b7bTfzv1zmAAAjDrBNQq8118.png


SVG 多邊形元素

    - SVG 使用 <polygon> 標籤來建立含有很多因而三個邊的多邊形,代碼以下:

wKioL1b7b-ewup5QAAA9mtLpuHw234.png

        - points 屬性定義多邊形每一個角的 x 和 y 座標


SVG 高斯模糊濾鏡元素

    - SVG  使用 <filter> 標籤來建立濾鏡

wKioL1b7cvrSTAjHAABNhDtO6pY456.png


    - SVG 使用 <linearGradient> 標籤來建立線性漸變

        - <filter> 標籤 id 屬性可爲濾鏡定義一個惟一的名稱(同一濾鏡可被文檔中的多個元素使用)

        - 濾鏡效果是經過 <feGaussianBlur> 標籤進行定義的

        - <feGaussianBlur> 標籤的stdDeviation 屬性可定義模糊的程度

        - in="SourceGraphic" 這個部分定義了由整個圖像建立效果

    - SVG 使用 <ellipse> 標籤來調用線性漸變:

 wKiom1b7eh7B_QWJAAAvxwLdOVo564.png        - filter:url 屬性來把元素連接到濾鏡。當連接濾鏡 id時,必須使用 # 字符



SVG 漸變元素

    - 漸變的概念

        - 漸變是一種從一種顏色到另外一種顏色的平滑過渡(能夠將多個顏色的過濾應用到同一個元素上)

    - SVG 漸變類型

        - SVG 線性漸變,使用 <linearGradient>標籤訂義線性漸變

        - SVG 放射性漸變,使用 <radialGradient> 標籤訂義放射性漸變

wKioL1b7fGzBo2KMAAAhc5Emquo542.png

    - SVG 使用 <linearGradient> 標籤來建立線性漸變:

wKioL1b7fNmDU2BGAAIDLtj3PaA757.png    - SVG 使用 <linearGradient> 標籤來建立線性漸變

        - <linearGradient> 標籤的 id 屬性 可爲漸變定義一個惟一的名稱

        - <linearGradient> 標籤的 x1,x2,y1,y2 屬性可定義漸變的開始和結束位置

        - 漸變的顏色範圍可由兩種或多種顏色組成。每種顏色經過一個<stop>標籤來規定。offset屬性用來定義漸變的開始和結束位置

    - SVG 使用 <ellipse> 標籤來調用線性漸變

        - fill:url(#orange_red) 屬性把 ellipse 元素連接到此漸變


總結:本章內容主要介紹了下 HTML5 SVG(概述、元素)

相關文章
相關標籤/搜索