我遇到了SVG文本元素的問題。我想找到SVG文本的中心點。在HTML文件中:HTML5 - 如何獲取SVG文本元素的中心點?
<svg xmlns="http://www.w3.org/2000/svg" version="1.1">
<text x="300" y="300" style="font-size: 80px;" id="test">It is example text</text>
</svg>
在Javascript中我有類似的東西:
var obj = document.getElementById('test').childNodes[1];
var box = obj.getBBox();
var centerPoint = new Object();
centerPoint.x = box.x + box.width/2;
centerPoint.y = box.y + box.height/ 2;
,但它不工作 - 中心點比我預期的要低。可能我錯過了一些東西,我確定還有一個文本屬性必須從「centerPoint.y」中減去。 「centerPoint.x」值似乎沒問題。它在IE9瀏覽器,Chrome,Opera和Firefox上進行檢查。結果是一樣的。
或者你有其他解決方案?
編輯
總結起來我的代碼工作正常。我重寫了整個代碼,現在沒問題。我不知道發生了什麼,可能我的瀏覽器根本沒有刷新腳本。將行高設置爲「0」是不必要的。 getBBox這是我需要做的一切。
無論如何感謝您的時間和對我的英語感到抱歉! :)
伸可能會影響到整體定位。看看你是否可以在盒子周圍繪製一個矩形 - 這會向你展示更多關於正在發生的事情。 – Randy