我在svg編輯器2.7版本中工作,在這裏我需要使用javascript在svg中選擇矩形的個別邊界值。如何使用javascript獲取rect標籤在svg中的邊界值
<svg width="9000" height="100" style="border:1px solid black"> <rect x="9000" y="0" height="100" width="200"></rect> </svg>
我的矩形得到這個選擇tool.But我需要選擇長方形的各個角落如下圖像
在SVG編輯文件包含鼠標按下,mousemove和mouseup event.Here我使用GETBBOX()
函數來獲得邊界val UE。但我需要分裂的邊界選擇像上面的圖像2. 這裏正在處理鼠標懸停事件獲取svg矩形的邊界。但我沒有達到它。請親引導我,或將我拖入正確的方式。
var mouseOver = function(evt) {
evt.preventDefault();
var root_sctm = $('#svgcontent g')[0].getScreenCTM().inverse();
var pt = svgedit.math.transformPoint(evt.pageX, evt.pageY, root_sctm),
mouse_x = pt.x * current_zoom,
mouse_y = pt.y * current_zoom;
var x = mouse_x/current_zoom,
y = mouse_y/current_zoom,
mouse_target = getMouseTarget(evt);
mouse_target =selectedElements[0];
switch (current_mode) {
case 'rect':
var test =selectedElements[0].getBBox();
console.log(test);
break;
}
如果您試圖確定您所在的矩形的哪一邊,那麼您可以使用'getBoundingClientRect()',然後使用這些座標來測試鼠標x,y是否接近四個邊中的任何一個。 – 2014-09-22 11:51:56
@ BigBadaboom ..我真的試圖找到矩形的邊緣,但我無法實現它..你能澄清更多的闡述?或者爲此提供一些其他解決方案? – 2014-09-23 08:31:28
向我們展示您迄今爲止所嘗試的代碼,並且我們可以看到您出錯的位置。 – 2014-09-23 10:03:36