zoukankan      html  css  js  c++  java
  • SVG总结

    SVG 意为可缩放矢量图形(Scalable Vector Graphics)。

    SVG 使用 XML 格式定义图像

    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"/>
    
    </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 元素和文档本身。

    使用 <object> 标签

    <object> 标签是 HTML 4 的标准标签,被所有较新的浏览器支持。它的缺点是不允许使用脚本。

    语法:

    <object data="rect.svg" width="300" height="100" 
    type="image/svg+xml"
    codebase="http://www.adobe.com/svg/viewer/install/" />

    使用 <iframe> 标签

    <iframe> 标签可工作在大部分的浏览器中。

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

    SVG 形状

    SVG 有一些预定义的形状元素,可被开发者使用和操作:

    • 矩形 <rect>
    • 圆形 <circle>
    • 椭圆 <ellipse>
    • 线 <line>
    • 折线 <polyline>
    • 多边形 <polygon>
    • 路径 <path>                                                                                                                                                                                                      例子                                                                                                                                                                                                         <rect width="300" height="100"style="fill:rgb(0,0,255);stroke-1;stroke:rgb(0,0,0)"/>
    • 代码解释:

      • rect 元素的 width 和 height 属性可定义矩形的高度和宽度
      • style 属性用来定义 CSS 属性
      • CSS 的 fill 属性定义矩形的填充颜色(rgb 值、颜色名或者十六进制值)
      • CSS 的 stroke-width 属性定义矩形边框的宽度
      • CSS 的 stroke 属性定义矩形边框的颜色                                                                                                                                                            
        <rect x="20" y="20" width="250" height="250"
        style="fill:blue;stroke:pink;stroke-5;
        fill-opacity:0.1;stroke-opacity:0.9"/>
      • 例子解释:

        • x 属性定义矩形的左侧位置(例如,x="0" 定义矩形到浏览器窗口左侧的距离是 0px)
        • y 属性定义矩形的顶端位置(例如,y="0" 定义矩形到浏览器窗口顶端的距离是 0px)
        • CSS 的 fill-opacity 属性定义填充颜色透明度(合法的范围是:0 - 1)
        • CSS 的 stroke-opacity 属性定义笔触颜色的透明度(合法的范围是:0 - 1)
        • <rect x="20" y="20" width="250" height="250"
          style="fill:blue;stroke:pink;stroke-5;
          opacity:0.9"/>
        • CSS 的 opacity 属性定义整个元素的透明值(合法的范围是:0 - 1)

        • <rect x="20" y="20" rx="20" ry="20" width="250"
          height="100" style="fill:red;stroke:black;
          stroke-5;opacity:0.5"/>
        • rx 和 ry 属性可使矩形产生圆角。
        • <circle> 标签

        • <circle cx="100" cy="50" r="40" stroke="black"
          stroke-width="2" fill="red"/>
        • 代码解释:

          cx 和 cy 属性定义圆点的 x 和 y 坐标。如果省略 cx 和 cy,圆的中心会被设置为 (0, 0)

          r 属性定义圆的半径。

        • <ellipse> 标签

        • <ellipse cx="300" cy="150" rx="200" ry="80"
          style="fill:rgb(200,100,50);
          stroke:rgb(0,0,100);stroke-2"/>
          • cx 属性定义圆点的 x 坐标
          • cy 属性定义圆点的 y 坐标
          • rx 属性定义水平半径
          • ry 属性定义垂直半径
          • <line> 标签

            <line> 标签用来创建线条。


          • <line x1="0" y1="0" x2="300" y2="300"
            style="stroke:rgb(99,99,99);stroke-2"/>
          • <polygon> 标签用来创建含有不少于三个边的图形。

          • <polygon points="220,100 300,210 170,250 123,234"
            style="fill:#cccccc;
            stroke:#000000;stroke-1"/>
          • SVG <polyline> 标签用来创建仅包含直线的形状。
          • 歪歪曲曲的线条,但是连贯的
          • <path> 标签用来定义路径。
            • M = moveto
            • L = lineto
            • H = horizontal lineto
            • V = vertical lineto
            • C = curveto
            • S = smooth curveto
            • Q = quadratic Belzier curve
            • T = smooth quadratic Belzier curveto
            • A = elliptical Arc
            • Z = closepath

            • <path d="M250 150 L150 350 L350 350 Z" />
            • 由于绘制路径的复杂性,因此强烈建议您使用 SVG 编辑器来创建复杂的图形。
  • 相关阅读:
    hyperV 虚拟机的创建和内存管理
    诡异~~ASP.NET 程序 无法上传文件 (这个..自己大意造成的嘛~~)
    多线程扫描,多线程采集, ftpscan.NET
    ASP.NET 调试
    Hyperv 如何使用WMI向虚拟计算机附加硬盘
    VS2008SP1显示中文版的智能感知提示信息
    NGIX
    python3的linux环境编译安装
    NGIX之项目布署
    android之自定义ViewGroup和自动换行的布局的实现(支持按钮间隔)
  • 原文地址:https://www.cnblogs.com/blesstian/p/6415256.html
Copyright © 2011-2022 走看看