[英]Change svg text's vertical position using svg.js
我已經閱讀了文檔,但不知道如何實現。 dy
沒有變化。
/**
* Draws text
*
* @param {String} $text Text
* @param {int} $x Starting point X coordinate
* @param {int} $y Starting point Y coordinate
* @param {Object} $font Font properties
* @returns {text} SVG JS text object
*/
drawText = function($text, $x, $y, $font) {
$svgText = $svg.text(($text !== undefined && $text !== null) ? $text : '-').attr({x: $x, y: $y}).font($font);
return $svgText.tspan.dy('0.9em');
};
提前謝謝
我認為您的問題出在這里:
return $svgText.tspan.dy('0.9em');
在文本元素上, tspan
是一種方法,而不是引用: http : //documentup.com/wout/svg.js#text/tspan
更新:
tspan()
方法不返回文本元素中已經存在的tspan,而是創建一個新的tspan。 您正在尋找的是lines
參考。 行將所有tspan保留在text元素內。 因為lines
是SVG.Set
的實例, SVG.Set
可以直接在其上調用dy
方法:
text.lines.dy(0.9)
如果要更改第一個元素的dy
,可以使用each
方法:
text.lines.each(function(i) {
if (i == 0)
this.dy(0.9)
})
請注意, leading
方法在這里也可能有用: http : //documentup.com/wout/svg.js#text/leading
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.