hilfdirselbst.ch
Facebook Twitter gamper-media
NEU!
Beiträge: 169
20. Nov 2017, 12:04
Beitrag #1 von 9
Bewertung:
(2332 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[Mini-AS] Place gun Starthilfe


Moinmoin,

ich tüddel hier rum und krieg den einfachsten Code nicht anlaufen. Wer kann mich hier auf den Fehlerteufel hinweisen?

tell application "Adobe InDesign CC 2017"
set testfile1 to POSIX file "/Volumes/srvmar101_01/• Fotoarchiv/ Fotos 10…/10011-02.jpg"
load place gun testfile1
end tell


Für mich ist es etwas tryNerror was das Dateienhandling angeht. Ich weiss eifach nicht genau wann ein Pfad ein as alias oder as POSIX file bekommen soll, bzw welchen Pfad ich aus dem System zurückbekomme.
Also, da kann schon der erste Fehler liegen. Aber hat schon jemand einen File bewusst an die Placegun geladen und wie würde das gehn?
Top
 
X
NEU!
Beiträge: 169
20. Nov 2017, 14:19
Beitrag #2 von 9
Beitrag ID: #560839
Bewertung:
(2309 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[Mini-AS] Place gun Starthilfe


Ich bin ein bisschen fündiger geworden, doch entweder klappt das generell nicht, oder der gezeigte Schnippsel war nie lauffähig. Any ideas?


Code
tell application "Adobe InDesign CC 2017" 
set testfile1 to choose file "Choose graphic file." with multiple selections allowed

tell active document
tell page 1
tell place gun 1
load place gun testfile1 without showing options
end tell
end tell
end tell
end tell

als Antwort auf: [#560831]
(Dieser Beitrag wurde von NEU! am 20. Nov 2017, 14:20 geändert)
Top
 
Uwe Laubender S
Beiträge: 3948
20. Nov 2017, 14:56
Beitrag #3 von 9
Beitrag ID: #560842
Bewertung:
(2303 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[Mini-AS] Place gun Starthilfe


Hallo NEU!,
ich bin nicht wirklich drin in AppleScript, aber weshalb der tell-Block mit der Seite 1? Ist der vielleicht kontraproduktiv?
*****
Mit herzlichem Gruß,
Uwe Laubender
als Antwort auf: [#560839] Top
 
NEU!
Beiträge: 169
20. Nov 2017, 15:32
Beitrag #4 von 9
Beitrag ID: #560846
Bewertung:
(2294 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[Mini-AS] Place gun Starthilfe


Ja-ha,

da hat Uwe wieder genau den richtigen Riecher, Danke dafür!
Ist natürlich Unsinn sowas Globales wie die PlacGun einer Seite zuzuflüstern.
Aber ich wusste überhaupt nicht, wie ich das Ding ansprechen sollte, ein einfaches load place gun file brach für mich immer unverständlich ab. Dass ich der Place Gun etwas tellen kann, wusste ich nicht. Woran erkennt man aus dem DOM, wenn ich ein tell-block an etwas z.B. page machen soll?
als Antwort auf: [#560842]
(Dieser Beitrag wurde von NEU! am 20. Nov 2017, 15:34 geändert)
Top
 
Uwe Laubender S
Beiträge: 3948
20. Nov 2017, 15:37
Beitrag #5 von 9
Beitrag ID: #560847
Bewertung:
(2291 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[Mini-AS] Place gun Starthilfe


Ok. Dein Problem scheint gelöst:

4. Re: [AS] Place gun
David André Erichsen Nov 20, 2017 2:39 PM (in response to DBLjan)
https://forums.adobe.com/message/9983903#9983903
*****
Mit herzlichem Gruß,
Uwe Laubender
als Antwort auf: [#560842] Top
 
Uwe Laubender S
Beiträge: 3948
20. Nov 2017, 15:44
Beitrag #6 von 9
Beitrag ID: #560848
Bewertung:
(2291 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[Mini-AS] Place gun Starthilfe


Zitat Woran erkennt man aus dem DOM, wenn ich ein tell-block an etwas z.B. page machen soll?


Vielleicht kann Dir das der Hans besser erklären.
Ich bin da nicht firm genug. Aber von ExtendScript her weiss ich, dass die Eigenschaft placeGuns direkt dem document zugeordnet ist:

http://jongware.mit.edu/...6js/pc_PlaceGun.html

Ganz unten auf dieser Seite siehst Du das beispielsweise in der Abteilung "Element of".
*****
Mit herzlichem Gruß,
Uwe Laubender
als Antwort auf: [#560846] Top
 
Hans Haesler  M  p
Beiträge: 5533
21. Nov 2017, 22:13
Beitrag #7 von 9
Beitrag ID: #560881
Bewertung:
(2177 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[Mini-AS] Place gun Starthilfe


Hallo NEU!,

zuerst zu Deiner Pfad-Frage. Diese vier sind möglich:

Code
set testfile1 to POSIX file "/Volumes/srvmar101_01/• Fotoarchiv/ Fotos 10…/10011-02.jpg" 
set testfile1 to POSIX file "srvmar101_01/• Fotoarchiv/ Fotos 10…/10011-02.jpg"
set testfile1 to "srvmar101_01:• Fotoarchiv: Fotos 10…:10011-02.jpg" as alias
set testfile1 to "srvmar101_01:• Fotoarchiv: Fotos 10…:10011-02.jpg"

Alle sollten ausserhalb des InDesign-tell-Blocks definiert sein.
Beim vierten muss in der Befehlszeile ein 'file' eingefügt werden: 'load place gun file testfile1'.
Zum Laden der Place-Gun ist nicht unbedingt ein POSIX-Pfad erforderlich.

Aber es ist besser, 'choose file' oder 'choose folder' zu verwenden. Damit vermeidet man, dass das Script verändert werden muss.

Ein Beispiel mit 'choose folder':

Code
set testFolder to choose folder 

tell application "Finder"
set testFiles to every file of folder testFolder as alias list
end tell

tell application "Adobe InDesign CC 2015"
activate
tell document 1
tell place gun 1
load place gun testFiles
end tell
end tell
end tell

*****
Übrigens ... kennst Du den folgenden Trick? Angenommen, die Place-Gun enthält sechs Dateien. Mit dem Mauszeiger ein Rechteck zeichnen. Die Taste nicht loslassen aber die Pfeiltaste nach rechts antippen. Und dann noch zwei Mal die Pfeiltaste nach oben. Und schon ist das grosse Rechteck in sechs kleine unterteilt. Zum Korrigieren: Pfeiltasten nach unten oder nach links.

Nach dem Loslassen der Maustaste sind die Bilder importiert. Zum proportionalen Einpassen: Cmd + Alt + Shift + C

*****
Zu deiner letzten Frage: Ja, das AppleScript-Verzeichnis ist nicht so einfach zu verstehen. Aber die 'place gun' findet man in der 'basics suite'. Und unter den properties der 'place gun' ist 'parent (document, r/o)'. Mit der Erklärung "The parent of the place gun (a document)". Doch 'place gun 1' ist nicht verzeichnet.

*****
Einen hab' ich noch ... Das Ergebnis von ...

Code
tell application "Adobe InDesign CC 2017" 
tell document 1
place gun 1
end tell
end tell

... ist:

Code
place guns of document id 1 of application "Adobe InDesign CC 2017" 

Man beachte das Mehrzahl-S: guns

Gruss, Hans
als Antwort auf: [#560846] Top
 
Uwe Laubender S
Beiträge: 3948
22. Nov 2017, 08:40
Beitrag #8 von 9
Beitrag ID: #560886
Bewertung:
(2144 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[Mini-AS] Place gun Starthilfe


Hallo Hans,
danke für Deine ausführlichen Erklärungen.

Was auch manchmal hilft, wenn man mal bei bestimmten Objekten nicht weiterkommt:

Der Blick rüber in die ExtendScript-DOM-Beschreibung von Jongware oder Gregor Fellenz. Sowohl AppleScript als auch ExtendScript (oder die VB-Script-Variante) für InDesign bedienen sich der gleichen Grundlage was das Document Object Model anbelangt.

Die Geschichte mit dem Plural beispielsweise wird dort offensichtlicher.
Verfügt man beispielsweise über die CHM-Datei zum DOM von Jongware, die sich leicht durchsuchen lässt, dann wird einem bereits u.a. folgendes angeboten, wenn man nach "place" sucht:

>place (method)

PlaceGun
placeGuns (property)


Zudem kann man sich noch darauf besinnen, dass mehrere Platzierungs-Cursor geladen sein können, wenn man mehrere Dokumente offen hat und von Dokument zu Dokument springt.
*****
Mit herzlichem Gruß,
Uwe Laubender
als Antwort auf: [#560881] Top
 
NEU!
Beiträge: 169
22. Nov 2017, 09:43
Beitrag #9 von 9
Beitrag ID: #560888
Bewertung:
(2133 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen

[Mini-AS] Place gun Starthilfe


Hallo Hans und Uwe,

vielen Dank für die hilfreichen Insights, meine kleines Script ist fertig und die Kollgen freuen sich:

Es hat sich gezeigt, auch wenn man den kompletten Dateinamen im Platzieren-Dialog in der Spotlight-Suche benutzt, MacOS die Dateien trotzdem manchmal nicht findet obwohl sie da sind. Wenn ich den Finder bescripte, passiert das nie.
Jedenfalls habe ich ein recht spezielles Tool gebastelt, welches das Einladen eines Logo-Typs vereinfacht, und man nur noch einen kleinen Teil der Logo-Nummer in den Script-Dialog eingeben muss, und dann anhand der begrenzen Auswahl insgesamt schneller ist, als den 'normalen' Platzieren-Dialog zu benutzen und sich auf die unsagbare Spotlight-Suche zu verlassen. Dazu leite ich auch noch aus der Selection ab, ob es ein Logo vom selben Typ ist (Dateinamenspezifika), und lese daraus die Länderversion aus. Hierzu musste ich auch den Dateipfad manipulieren, und konnte nicht mit ChooseFile/Folder arbeiten. Hat man sich nun im Dialog entschieden, wird das Logo gleich per Relink in die Box gebunden. Wenn aber kein Logo zum Austauschen angeklickt ist, landet das Logo an der Placegun, um es doch noch in einen anderen Logokasten zu droppen oder ganz neu aufzuziehen.

Vor zwei Jahren auf einer Schulung haben wir auch dieses nette Grid-Feature der Placgun beigebracht bekommen, was manchmal recht nützlich ist. Zu erwähnen wäre noch, dass man die Abstände des Grids mit Apfle+Pfeil noch verändern kann :)

Ich denke, ich werde mich ab jetzt besser im DOM zurecht finden.

Eine Sache will ich noch erwähnen, die mir zusätzlich Kopfschmerzen bereitet hat: Ich habe den ganzen Kram mit den Logos erst nur im Finder angefangen zu scripten, das klappte ganz gut, ich hatte mein file alias welches ich nun an die Placegun hängen wollte. Da aber der Finder immer den Fokus geklaut hat für seine Dialoge, wollte ich das ganze für InDesign benutzen, und musste feststellen dass zB…
set SubFolders to name of folders of the contents of MainFolder as list
…diese contents-Codezeile im tellblock von InDesign plötzlich nicht mehr funktioniert, und ich tell application "Finder" drumrumstricken musste. Manchmal verzweifle ich son bisschen an der Syntax, wer nun welche Befehle für sich wie nutzt.


Nungut, ich freue mich immer wieder, dass hier freundliche und hilfsbereite Kollegen gerne Helfen! Weiter so, und eine schöne Woche allen Mitlesern.
als Antwort auf: [#560881] Top
 
X