Ich möchte in der Lage sein, eine von einem Skript erstellte Liste von Punktkoordinaten als Pfad zu importieren. Die Liste wäre nur ein Textdokument mit durch Zeilenumbrüche getrennten Koordinaten. Gibt es eine Möglichkeit, dies zu tun?
Ja, Sie können dazu ein einfaches Skript verwenden (extendScript, in Datei mit jsx-Rendering einfügen und auf Illustrator ziehen und ablegen):
#target illustrator
main();
function map(arr, func){ //extendScript has no map
ret = new Array();
for (var i = 0; i < arr.length; i++){
ret.push(func(arr[i]));
}
return ret;
}
function main() {
var doc = app.activeDocument
var file = File.openDialog('load points', 'points:*.txt', false);
file.open('r');
var points = new Array();
while(! file.eof){
var line = file.readln();
var data = map(line.split(/[, ]+/), Number)
points.push(data);
}
newPath = doc.pathItems.add();
newPath.setEntirePath( points );
}
Das Skript fordert eine Datei mit einer 2D-Koordinate pro Zeile auf. Jeder Koordinatenwert auf der Zeile ist entweder durch Komma oder Leerzeichen (oder eine beliebige Kombination davon) getrennt. Fühlen Sie sich frei, nach Ihren Bedürfnissen zu bearbeiten.
Oder Sie können Ihr Skript die Daten direkt in Ihr Skript schreiben lassen, indem Sie COM (Component Object Model, allgemein auch als Visual Basic bezeichnet) oder OSA (Open Scripting Architecture, allgemein auch als AppleScript bezeichnet) verwenden, die beide in einer Reihe von Hostsprachen funktionieren (wie Python).
joojaa