SVG 填充、描邊和透明度設定
本章節通過程式碼例項介紹一下如何實現SVG圖形的填充、描邊和透明度設定。
非常簡單的操作,可以類比於CSS設定元素的背景、邊框和透明度的操作。
最為熟悉的填充或者描邊操作都是對顏色的設定,其實也可以設定漸變或者圖案等。
本文為了簡便,只以設定顏色為例子進行演示,更多內容可以參閱如下幾篇文章:
(1).SVG <pattern> 圖案模式一章節。
(2).SVG <linearGradient> 線性漸變一章節。
(3).SVG <radialGradient>徑向漸變一章節。
下面進入正題,分別通過程式碼例項介紹一下標題中提到的三個操作。
一.SVG 填充操作:
填充操作可以類比CSS設定元素背景顏色,非常的簡單。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <title>svg測試</title> <style type="text/css"> svg { width:300px; height:300px; } </style> </head> <body> <svg xmlns="http://www.w3.org/2000/svg" version="1.1"> <circle cx="120" cy="120" r="80" fill="red"/> </svg> </body> </html>
上述程式碼執行效果截圖如下:
上述程式碼將繪製的圓形,填充為紅色,非常簡單的操作。
使用fill屬性即可實現,文章的開頭已經介紹過,作為填充的內容沒必要都是顏色。
也可以是漸變或者圖案等,本文就不再演示,上面對應的文章中應該有介紹。
上述程式碼中,顏色值是關鍵字形式,當然也可以是其他格式的顏色值,比如RGB或者十六進位制。
只要CSS中合法的顏色值,在SVG中都是合法的,具體參閱CSS 顏色值型別一章節。
SVG填充與canvas類似,也需要遵守相應的填充規則,具體參閱canvas 非零繞組規則與奇偶規則一章節。
二.SVG描邊:
描邊可以類比於CSS設定元素邊框,看如下程式碼例項:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> </head> <body> <svg width="500" height="500"> <rect x="10" y="10" width="100" height="100" stroke="red" stroke-width=15 fill="none" /> </svg> </body> </html>
程式碼執行效果截圖如下:
程式碼簡單分析如下:
(1).stroke屬性用於設定元素的描邊顏色,也就是邊框顏色。
(2).stroke-width屬性用於設定元素描邊的寬度,也就是邊框的寬度。
三.SVG透明度:
SVG的透明度可以類比於CSS設定元素的透明度。
設定透明度可以分為兩個部分,設定描邊的透明度和設定元素的透明度。
設定描邊透明度可以使用stroke-opacity屬性,設定元素透明度可以使用fill-opacity屬性。
程式碼例項如下:
[HTML] 純文字檢視 複製程式碼執行程式碼<!doctype html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.softwhy.com/" /> <title>螞蟻部落</title> </head> <body> <svg width="500" height="500"> <rect x="10" y="10" width="100" height="100" stroke="red" stroke-opacity="0.1" stroke-width=15 fill="green" fill-opacity="0.5"/> </svg> </body> </html>
程式碼執行效果截圖如下:
上面的程式碼分別通過對應的屬性設定了描邊和填充的透明度。
可以看到上述圖片中,邊框和內容有部分割槽域重合了,具體原理參閱SVG繪製1px直線模糊一章節。
相關文章
- SVG 文字填充和描邊SVG
- SVG描邊透明度簡單介紹SVG
- SVG設定邊框的透明度程式碼例項SVG
- canvas描邊和填充介紹Canvas
- canvas 描邊與填充Canvas
- canvas 填充覆蓋描邊Canvas
- svg以動畫方式設定透明度SVG動畫
- CSS 設定邊框透明度CSS
- CSS和SVG實現文字漸變、描邊、投影CSSSVG
- 短視訊系統原始碼,如何給button控制元件新增描邊、填充背景和描邊原始碼控制元件
- 雙效合一的SVG多色描邊變形動畫SVG動畫
- canvas 設定透明度Canvas
- canvas設定透明度Canvas
- jQuey設定透明度
- CSS 透明度設定CSS
- svg圖片 填充顏色SVG
- JavaScript 動畫方式設定元素尺寸和透明度JavaScript動畫
- JavaScript設定元素透明度JavaScript
- jQuery設定透明度效果jQuery
- 多邊形填充-活動邊表法
- button設定邊寬和圓角
- Android 設定TextView透明度AndroidTextView
- 設定svg圖片大小SVG
- 成品直播原始碼,設定樣式(字型樣式、行列寬高、對齊方式、邊框、填充和漸變)原始碼
- 4連通域邊界填充演算法和8連通域邊界填充演算法C++演算法C++
- SVG <polygon> 多邊形SVGGo
- 使用jquery設定元素的透明度jQuery
- JavaScript漸變方式設定透明度JavaScript
- [SVG]修改固定顏色為填充顏色SVG
- CSS 設定svg元素樣式CSSSVG
- SVG 設定線條樣式SVG
- 一枚角度漸變描邊 loading 圖示的 SVG 修煉之路SVG
- 表格的邊距 邊框設定
- 使用javascript設定圖片的透明度JavaScript
- 利用jquery設定div元素的透明度jQuery
- jQuery動畫方式設定元素的透明度jQuery動畫
- 以動畫方式設定元素的透明度動畫
- Android 之 View透明度的設定AndroidView