我做的SVG編輯的修改,更具體馬克McKays方法來繪製:https://github.com/duopixel/Method-Draw。整合Poilu拉斐爾布爾運算(工會,減法)與SVG編輯
我想用這個拉斐爾圖書館,我發現:https://github.com/poilu/raphael-boolean,讓我到我的畫布內執行布爾臺(套)的操作上的路徑。
現在我已經實現了一個觸發了一個函數在編輯器中的按鈕:
var paper = Raphael("canvas", 250, 250);
var path = paper.path("M 43,53 183,85 C 194,113 179,136 167,161 122,159 98,195 70,188 z");
path.attr({fill: "#a00", stroke: "none"});
var ellipse = paper.ellipse(170, 160, 40, 35);
ellipse.attr({fill: "#0a0", stroke: "none"});
var newPathStr = paper.union(path, ellipse);
//draw a new path element using that string
var newPath = paper.path(newPathStr);
newPath.attr({fill: "#666"});
// as they aren't needed anymore remove the other elements
path.remove();
ellipse.remove();
好了,在點擊按鈕心不是應該有一個橢圓形返回一個聯合在一起(焊接)路徑編輯器?
還是我得到這個錯了嗎?
我正在搞清楚的東西必須使用var紙張=聖拉斐爾( 「畫布」,250,250)改變;因爲svg-edit使用了不同的畫布名稱,但我不知道如何去做。
任何幫助將十分讚賞,因爲我一直在掙扎了一段時間與此有關。
UPDATE:該庫是無法處理多目標焊接,自相交和許多其他案件。它只在我們想要對2個簡單對象執行操作時才起作用。這可能不會立即與手頭的問題相關,但我認爲無論如何都要提到它是明智的。
參考這個問題,如果你正在尋找布爾運算對SVG元素:Boolean Operations on SVG paths