SVG繪制文本

在SVG中前酿,通過(guò) text 標(biāo)簽來(lái)繪制文本,它是一個(gè)雙標(biāo)簽茅茂,基本語(yǔ)法為:尖角號(hào) text捏萍,尖角號(hào) /text,標(biāo)簽里填寫文本的內(nèi)容空闲。

它的 屬性 x 和 屬性y令杈,定義文本的位置坐標(biāo),值為數(shù)字碴倾。

還有兩個(gè)常用屬性:

font-size逗噩,定義文本的大小,值為數(shù)字跌榔。

text-anchor异雁,定義文本的對(duì)齊方式。有三個(gè)值:start僧须,以文本左端對(duì)齊纲刀;middle,以文本中間對(duì)齊担平;end示绊,以文本末尾對(duì)齊。

我們做個(gè)例子暂论。

新建一個(gè)文件 text.html耻台,補(bǔ)全基礎(chǔ)代碼,在 body 里添加一個(gè) svg 標(biāo)簽空另,定義屬性 width 等于 300盆耽,height 等于 30。

在 svg 里添加 text 標(biāo)簽扼菠,text 里寫入一些文本摄杂,定義屬性 x 等于 0,y 等于 5循榆,fill 等于 red析恢。保存文件。

在瀏覽器中預(yù)覽秧饮,一段文本繪制好了映挂。

這里你可能會(huì)問(wèn):svg 里為什么不用 p 標(biāo)簽來(lái)顯示文本呢泽篮?我們知道,svg 是在一個(gè)畫布里繪制圖形柑船,text 也是繪制的對(duì)象帽撑。這樣,我們就可以使用 svg 的一些專有特性控制文本了鞍时,比如旋轉(zhuǎn)文本亏拉。

我們給 text 標(biāo)簽定義 transform 屬性,值為 rotate 函數(shù)逆巍,在小括號(hào)里定義兩個(gè)參數(shù):

第一個(gè)參數(shù)是旋轉(zhuǎn)角度及塘。

第二個(gè)參數(shù),是旋轉(zhuǎn)的中心點(diǎn)坐標(biāo)锐极。此參數(shù)缺省默認(rèn)為原點(diǎn)(0,0) (讀作零零)笙僚。兩個(gè)參數(shù)之間用空格分開。

回到編輯器灵再,在上個(gè) svg 結(jié)尾處添加一個(gè) br 標(biāo)簽肋层。回車換行檬嘀。

添加一個(gè)新的 svg 標(biāo)簽槽驶,屬性 width 等于 200责嚷,height 等于 60鸳兽。

在 svg 里添加 text 標(biāo)簽,text 里寫入一些文本罕拂,定義屬性 x 等于 0揍异,y 等于 15,fill 等于 red爆班。定義 transform 屬性衷掷,值為 rotate,小括號(hào)柿菩,30 空格戚嗅,20,40 rotate(30 20,40)。保存枢舶。

回到瀏覽器懦胞,刷新,文本旋轉(zhuǎn)了凉泄。

text 元素可以包裹多個(gè) tspan 子元素。每個(gè) tspan 元素可以包含不同的格式和位置后众。

回到編輯器颅拦,在上個(gè) svg 結(jié)尾處添加一個(gè) br 標(biāo)簽教藻【嗨В回車換行。

再添加一個(gè)新的 svg 標(biāo)簽怖竭,屬性 width 等于 200锥债,height 等于 90。

在 svg 里添加 text 標(biāo)簽哮肚,定義屬性 x 等于 10,y 等于 20允趟,fill 等于 red。text 里寫入一些文本鸦致。

在文本的下方潮剪,定義一個(gè) tspan 標(biāo)簽,屬性 x 等于 10分唾, y 等于 45抗碰,里面寫入一些內(nèi)容绽乔。

復(fù)制一個(gè) tspan,屬性 x 等于 10看疗, y 等于 70,改寫一下里面的內(nèi)容两芳。

回到瀏覽器去枷,刷新怖辆,三行文本顯示出來(lái)了删顶。

你可能會(huì)問(wèn):text 繪制的文本可以添加鏈接嗎?可以的斑鼻。

給文本添加鏈接的方法猎荠,就是把 text 標(biāo)簽用 a 標(biāo)簽包裹起來(lái)蜀备,給 a 標(biāo)簽添加 xlink:href 屬性,屬性值就是鏈接的地址碾阁,也可以定義 target 屬性些楣。

這里為什么不直接用 href 屬性呢?實(shí)際上 svg 是應(yīng)用 xml 語(yǔ)法定義元素的愁茁,我們還要在 svg 標(biāo)簽上定義一個(gè)命名空間的屬性 xmlns:xlink (讀作xml n s 冒號(hào) xlink),屬性值一般寫為 w3c 的這個(gè)網(wǎng)址 (http://www.w3.org/1999/xlink)嘶居。這里大家不必深究促煮,直接照著寫下來(lái)即可。

回到編輯器菠齿,在上個(gè) svg 結(jié)尾處添加一個(gè) br 標(biāo)簽∩龋回車換行。

添加一個(gè)新的 svg 標(biāo)簽盗飒,屬性 width 等于 200陋桂,height 等于 30蝶溶,xmlns:xlink 等于這個(gè)網(wǎng)址嗜历。

在 svg 里添加 a 標(biāo)簽抖所,定義 xlink:href 屬性,值為一個(gè)鏈接地址暴匠,我們?cè)O(shè)置為本地的一個(gè) html 文件傻粘。

在 a 標(biāo)簽里添加 text 標(biāo)簽帮掉,填入一些文本窒典。給 text 定義屬性 x 等于 0蟆炊,y 等于 15瀑志,fill 等于 red。保存昧甘。

回到瀏覽器战得,刷新,點(diǎn)擊文本鏈接贡避,在新窗口里打開了本地的網(wǎng)頁(yè)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末湖饱,一起剝皮案震驚了整個(gè)濱河市杀捻,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌致讥,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,640評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件墓拜,死亡現(xiàn)場(chǎng)離奇詭異请契,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)涌韩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,254評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門氯夷,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事奢啥∽炻#” “怎么了?”我有些...
    開封第一講書人閱讀 165,011評(píng)論 0 355
  • 文/不壞的土叔 我叫張陵席吴,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我柬姚,道長(zhǎng)庄涡,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,755評(píng)論 1 294
  • 正文 為了忘掉前任撕捍,我火速辦了婚禮泣洞,結(jié)果婚禮上忧风,老公的妹妹穿的比我還像新娘球凰。我一直安慰自己,他們只是感情好缘厢,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,774評(píng)論 6 392
  • 文/花漫 我一把揭開白布甩挫。 她就那樣靜靜地躺著,像睡著了一般捶闸。 火紅的嫁衣襯著肌膚如雪拖刃。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,610評(píng)論 1 305
  • 那天央碟,我揣著相機(jī)與錄音,去河邊找鬼亿虽。 笑死,一個(gè)胖子當(dāng)著我的面吹牛粘秆,可吹牛的內(nèi)容都是我干的收毫。 我是一名探鬼主播,決...
    沈念sama閱讀 40,352評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼此再,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了摘符?” 一聲冷哼從身側(cè)響起策吠,我...
    開封第一講書人閱讀 39,257評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎别凹,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體炉菲,經(jīng)...
    沈念sama閱讀 45,717評(píng)論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡坤溃,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,894評(píng)論 3 336
  • 正文 我和宋清朗相戀三年薪介,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了祠饺。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片汁政。...
    茶點(diǎn)故事閱讀 40,021評(píng)論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡记劈,死狀恐怖勺鸦,靈堂內(nèi)的尸體忽然破棺而出目木,到底是詐尸還是另有隱情,我是刑警寧澤军拟,帶...
    沈念sama閱讀 35,735評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站懈息,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏阁最。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,354評(píng)論 3 330
  • 文/蒙蒙 一速种、第九天 我趴在偏房一處隱蔽的房頂上張望低千。 院中可真熱鬧,春花似錦示血、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,936評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至黔姜,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間秆吵,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,054評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工主穗, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留毙芜,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,224評(píng)論 3 371
  • 正文 我出身青樓猾浦,卻偏偏與公主長(zhǎng)得像灯抛,于是被迫代替她去往敵國(guó)和親金赦。 傳聞我的和親對(duì)象是個(gè)殘疾皇子对嚼,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,974評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • SVG 可伸縮矢量圖形(Scalable Vector Graphics) 使用 XML 格式定義圖像 是w3c的...
    小樓me閱讀 864評(píng)論 0 1
  • @(HTML5)[canvas與SVG] [TOC] 十一 纵竖、SVG HTML體系中,最常用的繪制矢量圖的技術(shù)是S...
    踏浪free閱讀 4,577評(píng)論 0 2
  • 接著上篇文章繼續(xù)往后講解其他知識(shí)點(diǎn)已脓,感謝讀者們?cè)敢饣ㄙM(fèi)您們寶貴時(shí)間閱讀通殃! 使用濾鏡filter(也是設(shè)置陰影) <...
    lilyping閱讀 822評(píng)論 0 0
  • 在SVG中,使用 path 標(biāo)簽來(lái)定義一個(gè)路徑画舌。它是一個(gè)單標(biāo)簽,基本語(yǔ)法為:尖角號(hào) path曲聂,斜線尖角號(hào)。應(yīng)用路徑...
    千鋒閱讀 1,275評(píng)論 0 0
  • 路徑 什么是SVG路徑M = moveto 起點(diǎn)L = lineto 其它點(diǎn)H = horizontal line...
    David_Rao閱讀 395評(píng)論 0 1