SVG 基礎圖形

SVG 基礎圖形

SVG包含了以下的基礎圖形元素:

  • 矩形(包括可選的圓角),使用<rect>元素創建
  • 圓形,使用<circle>元素創建
  • 橢圓形,使用<ellipse>元素創建
  • 直線,使用<line>元素創建
  • 折線,使用<polyline>元素創建
  • 多邊形,使用<polygon>元素創建

理論上,這些基礎圖形元素都能用<path>元素來構建的相同的圖形。并且所有可用于<path>元素的屬性都可以應用在這些基礎圖形上。

rect 元素

<rect>元素定義了一個與當前用戶坐標系軸對齊的矩形。而圓角的矩形可以通過設置元素的 rxry屬性來實現。

屬性定義:

  • x = <坐標點>,矩形左上角在當前用戶坐標系中的x軸坐標,默認值為0。是否可動畫:是。
  • y = <坐標點>,矩形左上角在當前用戶坐標系中的y軸坐標,默認值為0。是否可動畫:是。
  • width = <長度>,矩形寬度,默認值為0。是否可動畫:是。
  • height = <長度>,矩形高度,默認值為0。是否可動畫:是。
  • rx = <長度>,矩形X軸的圓角半徑,默認值為0。是否可動畫:是。
  • ry = <長度>,矩形y軸的圓角半徑,默認值為0。是否可動畫:是。

圓角規則:

  1. rx和ry必須是一個長度值。
  2. 如果沒有對rx和ry給出定義,那么它們都會被設為0。 (這樣他們會是一個尖角的矩形)
  3. 如果只對rx進行了賦值,那么ry會自動被設置為與rx相等的值。
  4. 如果只對ry進行了賦值,那么rx會自動被設置為與ry相等的值。
  5. 如果rx的值大于自身寬度的一半,那么它會被設置為自身寬度一半。
  6. 如果ry的值大于自身高度的一半,那么它會被設置為自身高度一半。

DEMO:

1 <svg xmlns="http://www.w3.org/2000/svg" width="300" height="200" viewBox="0 0 300 200" style="border:1px dashed #aaa;">
2     <rect x="50" y="50" width="200" height="100" fill="#cd5c5c"></rect>
3 </svg>
4 <svg xmlns="http://www.w3.org/2000/svg" width="300" height="200" viewBox="0 0 300 200" style="border:1px dashed #aaa;">
5     <rect x="50" y="50" rx="15" ry="15" width="200" height="100" fill="#cd5c5c"></rect>
6 </svg>

?

circle 元素

<circle>元素定義了一個圓形。

屬性定義:

  • cx = <坐標點>,圓心在當前用戶坐標系中的x軸坐標,默認值為0。是否可動畫:是。
  • cy = <坐標點>,圓心在當前用戶坐標系中的y軸坐標,默認值為0。是否可動畫:是。
  • r = <長度>,圓的半徑。是否可動畫:是。

DEMO:

1 <svg xmlns="http://www.w3.org/2000/svg" width="300" height="200" viewBox="0 0 300 200" style="border:1px dashed #aaa;">
2     <circle cx="150" cy="100" r="70" fill="#cd5c5c"></circle>
3 </svg>

?

ellipse 元素

<ellipse>元素定義了一個橢圓。

屬性定義:

  • cx = <坐標點>,圓心在當前用戶坐標系中的x軸坐標,默認值為0。是否可動畫:是。
  • cy = <坐標點>,圓心在當前用戶坐標系中的y軸坐標,默認值為0。是否可動畫:是。
  • rx = <長度>,圓的x軸半徑。是否可動畫:是。
  • ry = <長度>,圓的y軸半徑。是否可動畫:是。

DEMO:

?

line 元素

<line>元素定義了一個處于兩點之間的直線。

屬性定義:

  • x1 = <坐標點>,起點在當前用戶坐標系中的x軸坐標,默認值為0。是否可動畫:是。
  • y1 = <坐標點>,起點在當前用戶坐標系中的y軸坐標,默認值為0。是否可動畫:是。
  • x2 = <坐標點>,終點在當前用戶坐標系中的x軸坐標,默認值為0。是否可動畫:是。
  • y2 = <坐標點>,終點在當前用戶坐標系中的x軸坐標,默認值為0。是否可動畫:是。

因為line元素在幾何關系上是一個一維的圖形,所以它沒有內部的這個概念,也無法在該元素上使用fill屬性。

DEMO:

1 <svg xmlns="http://www.w3.org/2000/svg" width="300" height="200" viewBox="0 0 300 200" style="border:1px dashed #aaa;">
2     <line x1="50" y1="50" x2="250" y2="150" stroke-width="5" stroke="#cd5c5c" />
3 </svg>

?

polyline 元素

<polyline>元素定義了一個由多條相連的直線段而成的非閉合圖形。

屬性定義:

  • points = <多組的坐標點>,由points屬性中的坐標點相連而成的圖形。

DEMO:

1 <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="300" height="200" viewBox="0 0 300 200" style="border:1px dashed #aaa;">
2     <polyline fill="none" stroke="#cd5c5c" stroke-width="5" points="50,50 260,50 260,150 50,150" />
3 </svg>

?

polygon 元素

<polygon>元素定義了一個由多條相連的直線段而成的閉合圖形。

屬性定義:

  • points = <多組的坐標點>,與<polyline>元素相同,也是由points屬性中的坐標點相連而成的圖形,但起始點也會相連。

DEMO:

1 <svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="300" height="200" viewBox="0 0 300 200" style="border:1px dashed #aaa;">
2     <polygon fill="none" stroke="#cd5c5c" stroke-width="5" points="50,50 260,50 260,150 50,150" />
3 </svg>

?

轉載于:https://www.cnblogs.com/WhiteCusp/p/4170616.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/257861.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/257861.shtml
英文地址,請注明出處:http://en.pswp.cn/news/257861.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

棗莊三中高考2021成績查詢,2021棗莊中考成績查詢系統入口

2021棗莊中考成績查詢系統入口2021-05-20 19:11:35文/王佳慧2021年&#xff0c;棗莊的中考時間快到了&#xff0c;本文分享了棗莊中考成績查詢入口&#xff0c;系統開通后考生可登陸查詢成績。棗莊中考成績查詢入口志愿填報須知1.錄取標準&#xff1a;提前批、第一批、第三批學…

移動端”宴席知多少

轉載(http://adt.aicai.com/index.php/archives/179/) 瞎折騰移動端的項目已經很長一段時間了&#xff0c;并不像其它企業一樣&#xff0c;可以有項目組去完成&#xff0c;基本都是一個人瞎嘗試&#xff0c;時而web&#xff0c;時而web app。恍恍惚惚過了這段歲月&#xff0c;也…

快速的取整方法(~~)

為什么80%的碼農都做不了架構師&#xff1f;>>> 最近看一篇js裝逼小技巧————雙波浪號的妙用(將內容轉化為數字,或者小數取整)&#xff0c;但是本身我的JavaScript水平比較低對其底層操作和其使用范圍不甚了解&#xff1b;通過翻閱資料現進行簡單的整理。 ###裝…

git log友好顯示

查看commit 提交日志 $ git log $git log --prettyoneline $git reflog 顯示所有提交記錄&#xff0c;包括已經回退的提交&#xff0c;如圖&#xff1a;提交了abc 和 bb 然后回退到 abc   $git log 只顯示abc提交 可以使用 $git reset --hard commit號 回退到bb git reflog…

jprofiler_windows-x64_9_1注冊碼

L-Larry_Lau163.com#5481-ucjn4a16rvd98#6038 L-Larry_Lau163.com#36573-fdkscp15axjj6#25257 轉載于:https://www.cnblogs.com/sprinng/p/5104507.html

南理工計算機技術專業學位,南京理工大學計算機技術(專業學位)考研難嗎

很多考生在準備南京理工大學計算機技術(專業學位)考研難嗎&#xff1f;是考研報考的時候都會產生這樣的疑問&#xff1a;這個專業的研究生好嗎&#xff1f;適合我嗎&#xff1f;對我以后的人生和職業會有幫助嗎&#xff1f;考生在準備南京理工大學計算機技術(專業學位)專業考研…

《分布式系統:概念與設計》一2.3.2 體系結構模式

2.3.2 體系結構模式 體系結構模式構建在上述討論過的相對原始的體系結構元素之上&#xff0c;提供組合的、重復出現的結構&#xff0c;這些結構在給定的環境中能運行良好。它們未必是完整的解決方案&#xff0c;但當與其他模式組合時&#xff0c;它們會更好地引導設計者給出一…

javascript sort()實現元素json對象的排序

看以下代碼&#xff1a; var s [ { name: "Robin Van PurseStrings", age: 30 } ,{ name: "Theo Walcott", age: 24 } ,{ name: "Bacary Sagna", age: 28 } ].sort(function(obj1, obj2) {// 實現增序排列&#xff1a;前者的 age 小于后者…

html5手機簽名,html5手寫簽名

var canvas, board;canvas document.getElementById(myCanvas);canvas.height 300;canvas.width 400;board canvas.getContext(2d);board.lineWidth 1; //設置畫筆粗細board.strokeStyle "#f00";board.lineJoin "round"; //設置畫筆軌跡基于圓點拼接…

調查:Java程序員最傷心,C++程序員最年老

說起我們對編程世界現有的刻板印象&#xff0c;你一定聽說過類似于沒有人喜歡用Java編碼或者使用C 都是老人家&#xff0c;等等這樣的話。為了分析這些刻板印象背后的真相&#xff0c;Trestle Technology的數據工程師寫了一個工具。 不知道你有沒有聽說過微軟的Project Oxford&…

mysql一些寫常用命令

參見pcttcnc2007博客騰飛 1.mysql的status信息命令: mysql> show global status; 2.可以列出mysql服務器運行各種狀態值&#xff0c;另外&#xff0c;查詢mysql服務器配置信息語句&#xff1a; mysql> show variables; 3.連接數 經 常會遇見”mysql: error 1040: too man…

計算機不小心刪除怎么找回桌面,如何將桌面上誤刪的文件找回

在如今工作電腦化的趨勢下&#xff0c;用戶都會在桌面上創建各種各樣的文件等&#xff0c;這些文件都是需要在工作中經常要進行各種操作的重要文件&#xff0c;那么頻繁的操作也會出現各種的意外情況等&#xff0c;如果不小心刪除了重要的文件該怎么恢復呢&#xff1f;想要恢復…

《編程原本 》一3.3 程序變換

3.3 程序變換 power0是有關算法的一個令人滿意的實現,它適用于運算的代價高于函數遞歸調用開銷的情況.本節要推導出一個迭代算法,它執行運算的次數和power0一樣.這里將要做一系列程序變換,這些變換也可以用在其他許多情況中.5 在本書后面的部分,通常將只給出算法的最終版本或幾…

Effective C++ .07 virtual析構函數的提供

主要講了&#xff0c; 1. virtual析構函數的作用與調用順序 2. 使用時機&#xff0c;并不是使用了繼承就要把基類的析構函數變為虛函數&#xff08;virtual&#xff09;&#xff0c;只有當用于多態目的時才進行一個virtual析構函數的定義。 3. 不要繼承那些沒有將析構函數定義為…

OnClickListener沖突的問題

OnClickListener沖突的問題 (2011-11-26 15:28:27) 轉載▼標簽&#xff1a; 雜談 分類&#xff1a; android學習記錄 import anfroid.view.View.OnClickListenerimport anfroid.content.DialogInterface.OnClickListener 這兩個東西要同時用的話&#xff0c;要使用以下方式&…

html 響應式 同一行,一行CSS實現各種響應式元素 – Fluidity

一行CSS實現各種響應式元素 – Fluidity3月 31, 2014評論SponsorFLUIDITY是一個極微小的CSS樣式表&#xff0c;壓縮版只有一行代碼&#xff0c;大小只有115個字節&#xff0c;它能實現圖像、文本、Canvas、Table表格以及iFrame框架的響應式功能。好用且實用&#xff01;這個響應…

玩C一定用得到的19款Java開源Web爬蟲

網絡爬蟲(又被稱為網頁蜘蛛&#xff0c;網絡機器人&#xff0c;在FOAF社區中間&#xff0c;更經常的稱為網頁追逐者)&#xff0c;是一種按照一定的規則&#xff0c;自動地抓取萬維網信息的程序或者腳本。另外一些不常使用的名字還有螞蟻、自動索引、模擬程序或者蠕蟲。 今天將為…

一元二次方程

轉載于:https://www.cnblogs.com/569114a/p/4179164.html

cookie html5,HTML5——存儲(cookie、localStorage、sessionStorage)的區別

cookie本來用于客戶端和服務端通信&#xff0c;但是因為它有本地存儲的功能&#xff0c;于是被“借用”了。使用方法document.cookie 獲取和修改即可缺點存儲量太少&#xff0c;只有4kb所有http請求都帶著&#xff0c;會影響獲取資源的效率。API簡單&#xff0c;需要封裝才能使…

數據中心存在不當投資嗎?

不正當的投資是一種危害&#xff1a;在一些項目建設中&#xff0c;投入大量的資金是錯誤的&#xff0c;因為這些項目的需求是不可持續的或高估的。那么數據中心屬于這一類嗎? 投資不當的問題 不當投資會與經濟的繁榮與蕭條齊頭并進。例如&#xff0c;抑制按揭貸款利率可能會導…