3 回答

TA貢獻(xiàn)1829條經(jīng)驗 獲得超9個贊
寬度和高度是多少<svg>
。viewBox控制其內(nèi)容的顯示方式,因此viewBox =“ 0 0 1500 1000”會將<svg>
元素的內(nèi)容按比例縮小5(1500/300 = 5和1000/200 = 5),并且內(nèi)容將為1 / 5沒有viewBox時的大小,但是<svg>
假設(shè)您有一個彈性表面,并將其切成4個相等的部分。如果扔掉3塊,則表面的大小是原始表面的1/4。如果現(xiàn)在拉伸表面并使其大小與原始表面相同,則該表面上的所有內(nèi)容都會是該尺寸的兩倍。這就是viewBox和width / height關(guān)聯(lián)的方式。

TA貢獻(xiàn)1842條經(jīng)驗 獲得超21個贊
如果不指定視區(qū),則元素中所有無單位的數(shù)字均假定為像素。(并且SVG假設(shè)將90 dpi或每英寸的像素從厘米等單位轉(zhuǎn)換為像素。)
一個視圖框使您可以在元素中使無單位數(shù)字表示“用戶單位”,并指定如何將這些單位映射到大小。為簡單起見,僅考慮x坐標(biāo),即標(biāo)尺。您的視圖框顯示標(biāo)尺將具有1500個單位,以匹配svg的200像素大小寬度。
從0到1500(無單位,即用戶單位)的線元素將拉伸200像素,如圖所示,即橫跨svg繪圖的寬度。
(并且由于SVG可伸縮且不會降低分辨率,因此當(dāng)用戶放大或縮小像素時,像素在現(xiàn)實世界中的意義并不大。)
它是一種坐標(biāo)轉(zhuǎn)換。
我建議您從類似“ SVG Essentials”的書中學(xué)習(xí),大約要用10美元,我從中大致引用了這個答案。

TA貢獻(xiàn)1848條經(jīng)驗 獲得超6個贊
默認(rèn)情況下
<svg width="300" height="200">
svg網(wǎng)格的“標(biāo)尺”以像素為單位(該svg中的所有形狀均以像素為單位)
但是您想使用自己的單位,可以使用viewBox attr:
<svg width="300" height="200" viewBox="0 0 1500 1000">
這意味著:
水平軸: 1500(您的寬度單位)= 300px => 1(您的寬度單位)= 300 / 1500px = 1 / 5px
垂直軸: 1000(您的身高單位)= 200px => 1(您的身高單位)= 200 / 1000px = 1 / 5px
現(xiàn)在,svg中的所有形狀都會縮放:
與原點相比,它們的寬度縮小到1 / 5px(縮小1/5 <1 =>)。
與原點相比,它們的高度也縮放為1 / 5px(1/5 <1 =>縮?。?/p>
- 3 回答
- 0 關(guān)注
- 694 瀏覽
添加回答
舉報