So entfernen Sie ein Pfadduplikat, das von druckempfindlichen Stiften erstellt wurde

Ich bin neu in Svg und Js. Ich habe einige SVG-Dateien, die mit druckempfindlichen Stiften gezeichnet wurden, und sie haben Pfade mit Füllungen und doppelte Pfade (um die Füllungen zu enthalten). In Illustrator können Sie die gesamten Pfade auswählen und dann den Stift in einen einfachen Stift ändern (keine Druckempfindlichkeit). Dadurch werden die Pfade in einfache Pfade geändert (Pfade ohne doppelte Pfade für jede Linie). Das folgende SVG-Beispiel zeigt, dass jede Linie 2 Pfade parallel hat:

http://jsfiddle.net/Y35sV/10/

https://dl.dropboxusercontent.com/u/140225334/face.svg

Ich habe darüber nachgedacht, das Attribut d für jeden Pfad mit snap svg zu ändern. Beachten Sie, dass der kleine Pfad manuell auf einen einzelnen Pfad zugeschnitten wurde.

path.attr({

'd' = 'value'

});// Any ideas on how to get the right value for the d?

Wie ist es möglich, den zweiten Pfad für jede Zeile wie in Illustrator zu entfernen, jedoch programmgesteuert mit js?

Irgendwelche Ideen wären sehr dankbar.

****Aktualisieren:

Ich habe ein bisschen recherchiert und mit dem Problem herumgespielt und hier sind meine Ergebnisse:

1- Ich muss alle Unterpfade in Pfade umwandeln und auch alle Pfade in Absolute-Werte umwandeln. (Dieser Teil wird bereits von Ian ausgeführt.)

Hier :http://jsbin.com/fiwofukitegu/2/edit

2- Dann sollte ich die Anzahl der Cs für jedes Pfadsegment zählen und eine Prüffunktion haben, um zu prüfen, ob die Anzahl der C-Befehle gerade oder ungerade Zahlen sind.

etwas wie das:

for each M 
var cValue =C. count();
function isEven(value) {
    if (value%2 == 0)
        return true;
    else
        return false;
}

3- Ich habe dies praktisch und manuell überprüft:

Wenn die Anzahl der Cs in jedem Pfadsegment gerade ist wie 2, 4, 6, 8, 10, ..., sollte ich sie zuerst zählen und dann aus 2, 3, 4,5, 6 Cs und deren Folgendem entfernen Ziffern.

4- wenn die Anzahl der Cs in jedem Pfadsegment ungerade ist

wie 1, 3,5,7,9, ... Ich sollte sie zuerst zählen und dann von 1,2,3,4,5 Cs und ihren folgenden Ziffern entfernen.

dann ist das Ergebnis ein Pfadsegment mit nur einer Zeile, keine duplizierte Zeile.

Ich schätze jeden, der ein Experte von js ist und bereit ist zu helfen, diese Arbeit zu machen!

Antworten auf die Frage(1)

Ihre Antwort auf die Frage