hilfdirselbst.ch
Facebook Twitter gamper-media
Mac OS X enthält verschiedene integrierte Werkzeuge und Technologien, mit denen sich gängige Aufgaben schnell und einfach automatisieren lassen.
doeme89
Beiträge: 18
8. Aug 2013, 13:50
Beitrag #1 von 5
Bewertung:
(1807 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Linien in Illustrator erstellen


Hallo zusammen

Ausgangslage:
Bin noch ziemlich neu in Applescript, aber der Einstieg war ja ziemlich leicht. Mein Ziel ist es, ein kleines Script für Illustrator zu schreiben um gewisse Objekte automatisiert zu erzeugen. Aber die Library für Illustrator ist ja extrem gross und den Ueberblick habe ich noch nicht.

Mein Hauptproblem:
Es ist ja kinderleicht Objekte wie Kreise, Rechtecke oder Sterne zu erzeugen. Beim Erzeugen einer Linie scheitere ich allerdings bereits! Alles was ich will, ist eine Linie von Punkt 1(X,Y) nach Punkt2 (X,Y) zu erzeugen.

Später will ich dann noch die Werte für die Länge einer bestimmten Linie aus einem User Interface auslesen - aber das lass ich jetzt mal beiseite. Erste Priorität hat erst mal der Code.

Schön wäre natürlich auch, wenn ich als Masseinheit Millimeter anstelle der standardmässigen Points verwenden könnte. (Gibts da eine Umrechnungsfunktion?)

Vielen Dank beim helfen des Problems!

Gruss
Top
 
X
Hans Haesler  M  p
Beiträge: 5557
8. Aug 2013, 14:32
Beitrag #2 von 5
Beitrag ID: #516008
Bewertung:
(1785 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Linien in Illustrator erstellen


Hallo doeme89,

herzlich willkommen im AppleScript-Forum! :-)

Welche Version von Illustrator bemutzest Du?
Unter welchem Mac OS?

Ich weiss zwar nicht, ob das wichtig ist, denn ich scripte praktisch nie für Illustrator ...

Jetzt gerade bin ich unterwegs. Aber sobald ich zu Hause bin, werde ich versuchen Dir behilflich zu sein.

Gruss, Hans
als Antwort auf: [#515999] Top
 
doeme89
Beiträge: 18
8. Aug 2013, 15:41
Beitrag #3 von 5
Beitrag ID: #516014
Bewertung:
(1760 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Linien in Illustrator erstellen


Hallo Hans!

Die benutzte Version ist CS 6. Momentan setze ich noch 10.7 (Lion) als OS ein.

Danke schonmal im Voraus!
als Antwort auf: [#516008] Top
 
Hans Haesler  M  p
Beiträge: 5557
8. Aug 2013, 20:32
Beitrag #4 von 5
Beitrag ID: #516027
Bewertung:
(1708 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Linien in Illustrator erstellen


 
Hallo doeme89,

es gibt mehrere Möglichkeiten, um eine Linie (= Strich) zu erzeugen.

Zum Beispiel so:

Code
tell application "Adobe Illustrator" 
activate
tell document 1
set lineRef to make new path item
set entire path of lineRef to {{200, 500}, {375, 500}}
end tell
end tell

Der Variablen 'lineRef' wird das erzeugte Objekt zugewiesen. Dann kann man diese Variable benutzen, um den Linienrahmen weiter zu verändern.

Das Ganze kann aber auch direkt geschehen:

Code
tell application "Adobe Illustrator" 
activate
tell document 1
make new path item with properties {entire path:{{200, 400}, {375, 400}}, stroke width:0.5}
end tell
end tell

Die 'properties' (= Eigenschaften) werden beim Erzeugen des Objekts zugewiesen. Hier zusätzlich auch die Konturstärke (= stroke width).

Noch eine Variante: Die Positionen vorher vorbereiten und im Erzeugungs-Befehl als Variablen einsetzen:

Code
set x1 to 200 
set y1 to 300
set x2 to 375
set y2 to 300

tell application "Adobe Illustrator"
activate
tell document 1
make new path item with properties {entire path:{{x1, y1}, {x2, y2}}, stroke width:0.5}
end tell
end tell

Illustrator versteht die Werte nur in Punkten. Ungeachtet der Masseinheiten der Lineale.
Mit JavaScript könnte 'UnitValue' benutzt werden, um die Werte umrechnen zu lassen.
Mit AppleScript muss man sich anders behelfen:

Code
set x1 to 100 * 2.834645 
set y1 to 190 * 2.834645
set x2 to 100 * 2.834645
set y2 to 260 * 2.834645

tell application "Adobe Illustrator"
activate
tell document 1
make new path item with properties {entire path:{{x1, y1}, {x2, y2}}, stroke width:0.5}
end tell
end tell

Jeder Millimeterwert wird mit 2.834645 multipliziert, um die entsprechenden Punkte zu bekommen.
Weil x1 und x2 identisch sind, ist der erzeugte Linienrahmen senkrecht.

Die Library für Illustrator ist nicht sehr hilfreich. Besser ist der Scripting Guide, welcher hier erhältlich ist:
http://www.adobe.com/...rator/scripting.html
Auf Seite 26 wird das Problem der Masseinheiten erklärt.

Viel Spass!

Gruss, Hans
als Antwort auf: [#516014] Top
 
doeme89
Beiträge: 18
9. Aug 2013, 15:58
Beitrag #5 von 5
Beitrag ID: #516063
Bewertung:
(1651 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

Linien in Illustrator erstellen


Hallo Hans!!

Herzlichen Dank für deine rasche und ausführliche Antwort. Die Scripting Reference ist in der Tat viel hilfreicher (gerade für mich als Anfänger, da mehr erklärt) als die reine Library.

Der Tipp mit der Umrechnung ist auch gut, das lässt sich so bestimmt einbauen.

Nochmals Danke & Gruss
als Antwort auf: [#516027] Top
 
X