成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

一篇文章教會(huì)你使用SVG填充圖案

開(kāi)發(fā) 前端
SVG填充圖案用于用由圖像組成的圖案填充形狀。該圖案可以由SVG圖像(形狀)或位圖圖像組成。SVG填充模式看起來(lái)就像從Photoshop等中所習(xí)慣的那樣,被稱為“平鋪”。

[[381995]]

SVG填充圖案用于用由圖像組成的圖案填充形狀。該圖案可以由SVG圖像(形狀)或位圖圖像組成。SVG填充模式看起來(lái)就像從Photoshop等中所習(xí)慣的那樣,被稱為“平鋪”。

一、填充圖案

簡(jiǎn)單的svg填充模式。

示例:

  1. <!DOCTYPE html> 
  2. <html> 
  3. <body style="background-color: aqua;"
  4. <title>項(xiàng)目</title> 
  5. <svg width="500" height="150"
  6. <defs> 
  7. <pattern id="pattern1" x="10" y="10" width="20" height="20" patternunits="userSpaceOnUse"
  8. <circle cx="10" cy="10" r="10" style="stroke: none; fill: #FF0000"></circle> 
  9. </pattern> 
  10. </defs> 
  11. <rect x="10" y="10" width="100" height="100" style="stroke: #000000; fill: url(#pattern1);"
  12.      </rect> 
  13. </svg> 
  14. </body> 
  15. </html> 

代碼解析:

首先,在元素內(nèi)定義元素。圖案包含一個(gè)circle元素。

circle元素將用作填充圖案。其次,在CSS屬性中聲明一個(gè)元素fill,該元素引用其style屬性中的元素ID。

其次,聲明一個(gè)元素,該元素在CSS fill屬性中引用其樣式屬性中的元素ID。

運(yùn)行后圖像效果:

注意

元素中定義的圓是如何用作矩形的填充的。還要注意圓圈是如何從左到右,從上到下不斷重復(fù)的。

二、X,Y,寬度和高度

pattern元素的x和y屬性定義圖案開(kāi)始在元素中的形狀中的距離。元素的width和height屬性定義圖案的寬度和高度。

案例分析

這是從頭開(kāi)始的示例,并且將x和y設(shè)置為0:

  1. <svg width="500" height="150"
  2.    <defs> 
  3.        <pattern id="pattern2" 
  4.                 x="0" y="0" width="20" height="20" 
  5.                 patternUnits="userSpaceOnUse"
  6.  
  7.        <circle cx="10" cy="10" r="10" style="stroke: none; fill: #FF0000"
  8.          </circle> 
  9.        </pattern> 
  10.    </defs> 
  11.    <rect x="10" y="10" width="100" height="100" 
  12.          style="stroke: #000000; fill: url(#pattern2);" /> 
  13. </svg> 

運(yùn)行后圖像效果:

注意

圖案現(xiàn)在是如何從圓的中間開(kāi)始的(在矩形的頂部和左側(cè))。創(chuàng)建自己的填充圖案時(shí),通過(guò)使用x和y屬性值來(lái)實(shí)現(xiàn)所需的效果。

width和height屬性設(shè)定的圖案的寬度和高度。

在前面的示例中width,height它們都設(shè)置為20,即圓的直徑。因此,圓圈一遍又一遍地重復(fù)著,中間沒(méi)有空格。

設(shè)置圖案的width(寬度)為25,而不是20。

這樣,現(xiàn)在在水平圓圈之間現(xiàn)在有5個(gè)像素間隔。

  1. <pattern id="pattern2" x="0" y="0" width="25" height="20" patternUnits="userSpaceOnUse"

width, height都設(shè)置為25

下面是相同的實(shí)例,但是x和y設(shè)置為10 (<pattern>元素內(nèi)的圓心)

  1. <pattern id="pattern2" x="10" y="10" width="25" height="25" patternUnits="userSpaceOnUse"

現(xiàn)在,圖案從一個(gè)完整的圓圈開(kāi)始,但是仍然有多余的垂直和水平空間。

三、嵌套模式

可以嵌套填充圖案,以便填充圖案在內(nèi)部使用另一個(gè)填充圖案。

該示例具有一個(gè)使用圓形作為填充圖案的矩形。圓內(nèi)部使用矩形作為填充圖案。

示例:

  1. <svg width="500" height="150"
  2. <defs> 
  3. <pattern id="innerPattern" x="3" y="3" width="9" height="9" patternUnits="userSpaceOnUse"
  4. <rect x="0" y="0" width="6" height="6" style="stroke: none; fill: #ff0000;" /> 
  5. </pattern> 
  6. <pattern id="outerPattern" x="12" y="12" width="25" height="25" patternUnits="userSpaceOnUse"
  7. <circle cx="10" cy="10" r="10" style="stroke: #0000ff; fill: url(#innerPattern)" /> 
  8. </pattern> 
  9. </defs> 
  10. <rect x="10" y="10" width="100" height="100" style="stroke: #000000; fill: url(#outerPattern);" /> 
  11. </svg> 

運(yùn)行后圖像效果:

外部矩形現(xiàn)在由圓形填充,圓形又由矩形填充。

四、轉(zhuǎn)換模式

可以使用標(biāo)準(zhǔn)SVG轉(zhuǎn)換函數(shù)轉(zhuǎn)換填充模式。可以使用patternTransform屬性來(lái)實(shí)現(xiàn)這一點(diǎn)。

SVG模式轉(zhuǎn)換示例

定義了一個(gè)簡(jiǎn)單的圖案,該圖案在用作矩形的填充圖案之前旋轉(zhuǎn)了35度。

  1. <svg width="500" height="150">     
  2. <defs>     
  3. <pattern id="transformedPattern"     
  4. x="10" y="10" width="20" height="20"     
  5. patternUnits="userSpaceOnUse"     
  6. patternTransform="rotate(35)"     
  7. >     
  8. <circle cx="10" cy="10" r="10" style="stroke: none; fill: #0000ff" />     
  9. </pattern>     
  10. </defs>     
  11. <rect x="10" y="10" width="100" height="100"     
  12. style="stroke: #000000; fill: url(#transformedPattern);" />     
  13. </svg> 

運(yùn)行后圖像效果:

五、總結(jié)

本文基于Html基礎(chǔ),講解了有關(guān)SVG中的填充的相關(guān)知識(shí)點(diǎn)。如何去填充一個(gè)圖案,通過(guò)改變其中的屬性,呈現(xiàn)不一樣的填充效果。以及嵌套模式,轉(zhuǎn)換模式的實(shí)際應(yīng)用。

 

通過(guò)案例的分析,效果圖的展示,能夠讓讀者更好的去理解填充圖的屬性。

本文轉(zhuǎn)載自微信公眾號(hào)「前端進(jìn)階學(xué)習(xí)交流」,可以通過(guò)以下二維碼關(guān)注。轉(zhuǎn)載本文請(qǐng)聯(lián)系前端進(jìn)階學(xué)習(xí)交流公眾號(hào)。

 

責(zé)任編輯:武曉燕 來(lái)源: 前端進(jìn)階學(xué)習(xí)交流
相關(guān)推薦

2021-02-19 19:35:53

SVG 形狀元素

2021-03-02 18:35:27

SVG開(kāi)發(fā)空間

2020-12-01 09:36:35

SVG元素屬性

2021-03-19 10:01:41

SVG畫(huà)多邊形Htm基礎(chǔ)

2019-10-17 19:15:22

jQueryJavaScript前端

2021-12-28 09:27:45

Javascript 高階函數(shù)前端

2020-11-13 08:14:28

JavaScript

2023-06-21 00:10:17

JSONWeb服務(wù)器JavaScript

2021-05-29 10:20:54

GoModules語(yǔ)言

2021-09-15 10:00:33

Go語(yǔ)言Modules

2021-02-24 10:14:04

PythonClassPython基礎(chǔ)

2020-12-10 08:20:27

Python微博評(píng)論

2020-12-16 08:07:28

語(yǔ)言基礎(chǔ)反射

2021-12-30 10:28:30

Python 微博評(píng)論

2020-12-08 08:09:49

SVG圖標(biāo)Web

2021-02-26 20:01:57

SVG濾鏡元素

2020-12-31 08:35:07

Python抖音瀏覽器

2021-01-01 09:18:48

SVG圖像元素

2020-12-29 09:39:38

元素屬性定位

2020-12-23 08:12:08

javascriptSVG腳本SVG元素
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 久久久久久久久淑女av国产精品 | 天天干夜夜操视频 | 国产在线看片 | 欧美精品一区二区蜜桃 | 一区二区三区在线观看视频 | 一区二区三区中文字幕 | 亚洲一区在线播放 | 9久9久| 亚洲精品一二区 | 中文字幕一区二区三区四区不卡 | 成人福利在线视频 | 日韩精品999 | japanhd美女动| 成人网av| 国产免费一区二区三区 | 亚洲精品中文在线观看 | 99久久精品国产一区二区三区 | 欧美性久久 | 欧美日韩国产精品一区 | 亚洲毛片在线观看 | 免费人成激情视频在线观看冫 | 国产黄色小视频在线观看 | 日韩av一区二区在线观看 | 亚洲啪啪一区 | 美人の美乳で授乳プレイ | 亚洲一区国产 | 久久国产精品精品 | 亚洲成人一区二区 | 欧美aⅴ| 国产精品一区二区三区在线 | 一区二区三区免费 | 国产成人综合亚洲欧美94在线 | 91传媒在线观看 | 欧美精品欧美精品系列 | 97中文视频 | 99精品一级欧美片免费播放 | 欧美99久久精品乱码影视 | 午夜影院毛片 | 国产一区二区免费 | 永久精品 | 福利视频一区二区 |