SVG入门

一、SVG概念

  1、SVG:XML文本格式描述的矢量图

  Scalable Vector Graphics(简称SVG),是“可扩展矢量图形”的意思。SVG是由W3C制定的基于可扩展标记语言(XML)来描述二维矢量图型的一个开放标准。SVG严格遵从XML语法,SVG并用文本格式的描述性语言来描述图像内容,因此SVG是一种和图像分辨率无关的矢量图形格式。

  2、优势

  

二、SVG的简单实例

  这里是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 xmlns="http://www.w3.org/2000/svg" version="1.1">
      <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 元素和文档本身。

  注:所有的开启标签必须有关闭标签!

三、将SVG文件嵌入HTML中

  1、两种嵌入方式

  方式一:SVG 文件可通过以下标签嵌入 HTML 文档:<embed>、<object> 或者 <iframe>。

  方式二:SVG的代码可以直接嵌入到HTML页面中,或您可以直接链接到SVG文件。

  2、标签嵌入

  • <embed>标签:优势:所有主要浏览器都支持,并允许使用脚本。缺点:不推荐在HTML4和XHTML中使用(但在HTML5允许)
    <embed src="circle1.svg" type="image/svg+xml" /> 
  • <object>标签:优势:所有主要浏览器都支持,并支持HTML4,XHTML和HTML5标准。缺点:不允许使用脚本。
    <object data="circle1.svg" type="image/svg+xml"></object> 
  • <iframe>标签:优势:所有主要浏览器都支持,并允许使用脚本。缺点:不推荐在HTML4和XHTML中使用(但在HTML5允许)
    <iframe src="circle1.svg"></iframe> 

  3、直接嵌入

  在Firefox、Internet Explorer9、谷歌Chrome和Safari中,你可以直接在HTML嵌入SVG代码。

  •  1 <!DOCTYPE html>
     2 <html>
     3 <body>
     4 <!--直接嵌入svg文件-->
     5 <svg xmlns="http://www.w3.org/2000/svg" version="1.1">
     6    <circle cx="100" cy="50" r="40" stroke="blue" stroke-width="2" fill="red" />
     7 </svg> 
     8  
     9 </body>
    10 </html>

  4*、使用<a>标签链接到SVG文件

  • <a href="circle1.svg">View SVG file</a>

四、基本图形和属性

  1、基本图形

  • 矩形<rect>:
  • 圆<circle>:
  • 椭圆<ellipse>:
  • 直线<line>:
  • 折线<polyline>:

  2、属性:填充、描边和变换

  

  3、演示

  •  1 <!DOCTYPE html>
     2 <html>
     3 <head>
     4     <title>SVG基础图形</title>
     5 </head>
     6 <body>
     7     <!--svg-->
     8     <svg id="svg" xmlns="http://www.w3.org/2000/svg" version="1.1" width="1400" height="500">
     9         <rect x="20" y="10" width="300" height="200" fill="pink" stroke="red" stroke-width="3px"/>
    10         <rect x="340" y="10" width="300" height="200" rx="30" ry="50" style="fill:red;stroke:black;stroke-width:5;opacity:0.5"/>
    11 
    12         <circle cx="800" cy="120" r="110" stroke="black" stroke-width="2" fill="green" />
    13 
    14         <ellipse cx="1080" cy="110" rx="130" ry="80" stroke="red" stroke-width="2" fill="blue" />
    15 
    16         <line x2="200" x1="20" y2="400" style="stroke:rgb(24, 102, 57);stroke-width:5" y1="230"></line>
    17 
    18         <polyline style="fill:white;stroke:purple;stroke-width:3" points="400,230 450,330 550,330 650,400"/>
    19 
    20     </svg>
    21 </body>
    22 </html>

  

五、练习:微笑脸&真·手动滑稽

   

  •  1 <!DOCTYPE html>
     2 <html>
     3 <body>
     4     <svg id="svg" xmlns="http://www.w3.org/2000/svg" version="1.1" width="800" height="500">
     5             <!--face-->
     6             <circle cx="100" cy="100" r="90" fill="#39F" />
     7             <!--eyes-->
     8             <circle cx="70" cy="80" r="20" fill="white" />
     9             <circle cx="130" cy="80" r="20" fill="white" />
    10             <circle cx="65" cy="75" r="10" fill="black" />
    11             <circle cx="125" cy="75" r="10" fill="black" />
    12             <!--smile-->
    13             <path d="M 50 140 A 60 60 0 0 0 150 140" stroke="white" stroke-width="3" fill="none" />
    14             <rect id="viewBoxIndicator" stroke="red" stroke-width="3.5" fill="black" />
    15         </svg>
    16 </body>
    17 </html>

  

  •  1 <!DOCTYPE html>
     2 <html>
     3 <body>
     4     <svg id="svg" xmlns="http://www.w3.org/2000/svg" version="1.1" width="800" height="500">
     5             <!--face-->
     6             <circle cx="100" cy="100" r="90" style="fill: #f8dc0ee6;" />
     7             <!--eyes-->
     8             <ellipse style="fill: white;stroke: #b4b40180;stroke-width:5;" cy="50" rx="40" cx="55" ry="7" />
     9             <ellipse style="fill: white;stroke: #b4b40180;stroke-width:5;" cy="50" rx="40" cx="140" ry="7" />
    10             <circle fill="black" cx="30" cy="50" r="6" />
    11             <circle cx="125" fill="black" cy="50" r="6" />
    12             <ellipse style="fill: #f2863880;" cy="70" rx="30" cx="40" ry="7" />
    13             <ellipse style="fill: #f2863880;" cy="70" cx="160" rx="25" ry="7" />
    14             <!--smile-->
    15             <path fill="none" stroke="black" d="M 25 110 A 80 85 0 0 0 175 110" stroke-width="5"></path>
    16             <rect id="viewBoxIndicator" stroke="red" stroke-width="3.5" fill="black" />
    17         </svg>
    18 </body>
    19 </html>

  路径标签<path>我还没有学好,所以滑稽君的眉毛我就没画上去,o(* ̄︶ ̄*)o

 

转载于:https://www.cnblogs.com/fzz9/p/9116435.html

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
东南亚位于我国倡导推进的“一带一路”海陆交汇地带,作为当今全球发展最为迅速的地区之一,近年来区域内生产总值实现了显著且稳定的增长。根据东盟主要经济体公布的最新数据,印度尼西亚2023年国内生产总值(GDP)增长5.05%;越南2023年经济增长5.05%;马来西亚2023年经济增速为3.7%;泰国2023年经济增长1.9%;新加坡2023年经济增长1.1%;柬埔寨2023年经济增速预计为5.6%。 东盟国家在“一带一路”沿线国家中的总体GDP经济规模、贸易总额与国外直接投资均为最大,因此有着举足轻重的地位和作用。当前,东盟与中国已互相成为双方最大的交易伙伴。中国-东盟贸易总额已从2013年的443亿元增长至 2023年合计超逾6.4万亿元,占中国外贸总值的15.4%。在过去20余年中,东盟国家不断在全球多变的格局里面临挑战并寻求机遇。2023东盟国家主要经济体受到国内消费、国外投资、货币政策、旅游业复苏、和大宗商品出口价企稳等方面的提振,经济显现出稳步增长态势和强韧性的潜能。 本调研报告旨在深度挖掘东南亚市场的增长潜力与发展机会,分析东南亚市场竞争态势、销售模式、客户偏好、整体市场营商环境,为国内企业出海开展业务提供客观参考意见。 本文核心内容: 市场空间:全球行业市场空间、东南亚市场发展空间。 竞争态势:全球份额,东南亚市场企业份额。 销售模式:东南亚市场销售模式、本地代理商 客户情况:东南亚本地客户及偏好分析 营商环境:东南亚营商环境分析 本文纳入的企业包括国外及印尼本土企业,以及相关上下游企业等,部分名单 QYResearch是全球知名的大型咨询公司,行业涵盖各高科技行业产业链细分市场,横跨如半导体产业链(半导体设备及零部件、半导体材料、集成电路、制造、封测、分立器件、传感器、光电器件)、光伏产业链(设备、硅料/硅片、电池片、组件、辅料支架、逆变器、电站终端)、新能源汽车产业链(动力电池及材料、电驱电控、汽车半导体/电子、整车、充电桩)、通信产业链(通信系统设备、终端设备、电子元器件、射频前端、光模块、4G/5G/6G、宽带、IoT、数字经济、AI)、先进材料产业链(金属材料、高分子材料、陶瓷材料、纳米材料等)、机械制造产业链(数控机床、工程机械、电气机械、3C自动化、工业机器人、激光、工控、无人机)、食品药品、医疗器械、农业等。邮箱:market@qyresearch.com

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值