日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

SVG

發布時間:2023/12/18 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SVG 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

什么是SVG?

  • SVG 指可伸縮矢量圖形 (Scalable Vector Graphics)
  • SVG 用來定義用于網絡的基于矢量的圖形
  • SVG 使用 XML 格式定義圖形
  • SVG 圖像在放大或改變尺寸的情況下其圖形質量不會有所損失
  • SVG 是萬維網聯盟的標準
  • SVG 與諸如 DOM 和 XSL 之類的 W3C 標準是一個整體 ? ?

SVG?的優勢

  • SVG 可被非常多的工具讀取和修改(比如記事本)
  • SVG 與 JPEG 和 GIF 圖像比起來,尺寸更小,且可壓縮性更強。
  • SVG 是可伸縮的
  • SVG 圖像可在任何的分辨率下被高質量地打印
  • ? ? SVG 可在圖像質量不下降的情況下被放大
  • SVG 圖像中的文本是可選的,同時也是可搜索的(很適合制作地圖)
  • SVG 可以與 Java 技術一起運行
  • SVG 是開放的標準
  • SVG 文件是純粹的 XML?
  • ?

    下面的例子是一個簡單的 SVG 文件的例子。SVG 文件必須使用 .svg 后綴來保存:

    <!--?xml version="1.0" standalone="no"?-->

    ?<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">

    <svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg">

    <circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="red"></circle>

    </svg>

    代碼解釋

    第一行包含了?XML?聲明。請注意?standalone?屬性!該屬性規定此?SVG?文件是否是“獨立的”,或含有對外部文件的引用。?standalone="no"?意味著?SVG?文檔會引用一個外部文件 - 在這里,是?DTD?文件。

    第二和第三行引用了這個外部的?SVG DTD。該 DTD 位于 “http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd”。?該 DTD 位于 W3C,含有所有允許的 SVG 元素。

    SVG?代碼以 < svg > 元素開始,包括開啟標簽 < svg > 和關閉標簽 < /svg > 。這是根元素。width?和?height?屬性可設置此 SVG 文檔的寬度和高度。version?屬性可定義所使用的 SVG 版本,xmlns?屬性可定義 SVG 命名空間。

    SVG?的 < circle > 用來創建一個圓。cx?和?cy?屬性定義圓中心的?x?和?y?坐標。如果忽略這兩個屬性,那么圓點會被設置為 (0, 0)。r 屬性定義圓的半徑。

    stroke?和?stroke-width?屬性控制如何顯示形狀的輪廓。我們把圓的輪廓設置為 2px 寬,黑邊框。

    fill?屬性設置形狀內的顏色。我們把填充顏色設置為紅色。

    關閉標簽的作用是關閉?SVG?元素和文檔本身。

    注釋:所有的開啟標簽必須有關閉標簽!

    ?

    ?

    ————————————————————————————————————————————————————————————————————————————

    ?

    如何在HTML頁面中插入 SVG:

    SVG 文件可通過以下標簽嵌入 HTML 文檔:< embed > 、< object > 或者 < iframe >。

    三種把 SVG 文件嵌入 HTML 頁面的不同方法。

    使用 < embed > 標簽

    < embed > 標簽被所有主流的瀏覽器支持,并允許使用腳本。

    注釋:當在 HTML 頁面中嵌入 SVG 時使用 < embed > 標簽是?Adobe SVG Viewer推薦的方法!然而,如果需要創建合法的 XHTML,就不能使用 < embed >。任何 HTML 規范中都沒有 < embed > 標簽。

    語法

  • < src="rect.svg" width="300" height="100" type="image/svg+xml" pluginspage="http://www.adobe.com/svg/viewer/install/">
  • 注釋:pluginspage?屬性指向下載插件的 URL。

    使用 < object > 標簽

    < object > 標簽是?HTML 4?的標準標簽,被所有較新的瀏覽器支持。它的缺點是不允許使用腳本。

    注釋:假如您安裝了最新版本的 Adobe SVG Viewer,那么當使用 < object > 標簽時 SVG 文件無法工作(至少不能在 IE 中工作)!

    語法

  • <object data="rect.svg" width="300" height="100" type="image/svg+xml" codebase="http://www.adobe.com/svg/viewer/install/"></object>
  • 注釋:codebase 屬性指向下載插件的 URL。

    使用 < iframe > 標簽

    < iframe > 標簽可工作在大部分的瀏覽器中。

    語法

  • <iframe src="rect.svg" width="300" height="100"></iframe>
  • ?

    ————————————————————————————————————————————————————————————————————————————

    ?

    SVG實例——矩形

    <svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg">

    ? ? ?<rect x="20" y="20" rx="10" ry="10" width="300" height="100" style="fill:rgb(0,0,255);stroke-width:1;stroke:rgb(0,0,0);fill-opacity:0.1;stroke- ?opacity:0.9;opacity:0.9"></rect>

    </svg>

    代碼解釋

    • rect 元素的 width 和 height 屬性可定義矩形的高度和寬度
    • style 屬性用來定義 CSS 屬性
    • CSS 的 fill 屬性定義矩形的填充顏色(rgb 值、顏色名或者十六進制值)
    • CSS 的 stroke-width 屬性定義矩形邊框的寬度
    • CSS 的 stroke 屬性定義矩形邊框的顏色
    • x 屬性定義矩形的左側位置(例如,x="0" 定義矩形到瀏覽器窗口左側的距離是 0px)
    • y 屬性定義矩形的頂端位置(例如,y="0" 定義矩形到瀏覽器窗口頂端的距離是 0px)
    • CSS 的 fill-opacity 屬性定義填充顏色透明度(合法的范圍是:0 - 1)
    • CSS 的 stroke-opacity 屬性定義筆觸顏色的透明度(合法的范圍是:0 - 1
    • CSS 的 opacity 屬性定義整個元素的透明值(合法的范圍是:0 - 1)
    • rx 和 ry 屬性可使矩形產生圓角。

    ?

    ?

    ————————————————————————————————————————————————————————————————————————————

    ?

    SVG實例——圓形

    circle?標簽可用來創建一個圓,它只有3個屬性用來設置圓形。

  • <svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg">
  • <circle cx="100" cy="50" r="40" stroke="black" stroke-width="2" fill="red"></circle>
  • </svg>
  • 代碼解釋

    • cx?和?cy?屬性定義圓點的 x 和 y 坐標。如果省略 cx 和 cy,圓的中心會被設置為 (0, 0)
    • r?屬性定義圓的半徑。

    ————————————————————————————————————————————————————————————————————————————

    ?

    SVG實例——橢圓

    ellipse?標簽可用來創建橢圓。橢圓與圓很相似。不同之處在于橢圓有不同的 x 和 y 半徑,而圓的 x 和 y 半徑是相同的。

    <svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg">

    ? ? ? ? ? <ellipse cx="300" cy="150" rx="200" ry="80" style="fill:rgb(200,100,50);stroke:rgb(0,0,100);stroke-width:2"></ellipse>

    </svg>

    代碼解釋

    • cx 屬性定義圓點的 x 坐標
    • cy 屬性定義圓點的 y 坐標
    • rx 屬性定義水平半徑
    • ry 屬性定義垂直半徑

    ————————————————————————————————————————————————————————————————————————————

    SVG實例——線條

    line?標簽用來創建線條。

    <svg width="100%" height="100%" version="1.1" xmlns="http://www.w3.org/2000/svg">

      <line x1="0" y1="0" x2="300" y2="300" style="stroke:rgb(99,99,99);stroke-width:2"></line>

    </svg>

    代碼解釋

    • x1 屬性在 x 軸定義線條的開始
    • y1 屬性在 y 軸定義線條的開始
    • x2 屬性在 x 軸定義線條的結束
    • y2 屬性在 y 軸定義線條的結束

    SVG的實例有很多,可以百度一下,網上有很多的美麗的圖形代碼,本筆記主要記錄SVG實現的原理和在文檔中的格式

    ?

    轉載于:https://www.cnblogs.com/CloverH/p/5031922.html

    總結

    以上是生活随笔為你收集整理的SVG的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。