[GastForen Programme Print/Bildbearbeitung Adobe InDesign Skriptwerkstatt [Mini-AS] Place gun Starthilfe

  • Suche
  • Hilfe
  • Lesezeichen
  • Benutzerliste
Print/Bildbearbeitung - Photos, Layout, Design
Themen
Beiträge
Moderatoren
Letzter Beitrag

[Mini-AS] Place gun Starthilfe

NEU!
Beiträge gesamt: 180

20. Nov 2017, 12:04
Beitrag # 1 von 9
Bewertung:
(6856 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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?
X

[Mini-AS] Place gun Starthilfe

NEU!
Beiträge gesamt: 180

20. Nov 2017, 14:19
Beitrag # 2 von 9
Beitrag ID: #560839
Bewertung:
(6833 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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)

[Mini-AS] Place gun Starthilfe

Uwe Laubender
Beiträge gesamt: 5316

20. Nov 2017, 14:56
Beitrag # 3 von 9
Beitrag ID: #560842
Bewertung:
(6827 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
Hallo NEU!,
ich bin nicht wirklich drin in AppleScript, aber weshalb der tell-Block mit der Seite 1? Ist der vielleicht kontraproduktiv?


als Antwort auf: [#560839]

[Mini-AS] Place gun Starthilfe

NEU!
Beiträge gesamt: 180

20. Nov 2017, 15:32
Beitrag # 4 von 9
Beitrag ID: #560846
Bewertung:
(6818 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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)

[Mini-AS] Place gun Starthilfe

Uwe Laubender
Beiträge gesamt: 5316

20. Nov 2017, 15:37
Beitrag # 5 von 9
Beitrag ID: #560847
Bewertung:
(6815 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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


als Antwort auf: [#560842]

[Mini-AS] Place gun Starthilfe

Uwe Laubender
Beiträge gesamt: 5316

20. Nov 2017, 15:44
Beitrag # 6 von 9
Beitrag ID: #560848
Bewertung:
(6815 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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".


als Antwort auf: [#560846]

[Mini-AS] Place gun Starthilfe

Hans Haesler
  
Beiträge gesamt: 5826

21. Nov 2017, 22:13
Beitrag # 7 von 9
Beitrag ID: #560881
Bewertung:
(6701 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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]

[Mini-AS] Place gun Starthilfe

Uwe Laubender
Beiträge gesamt: 5316

22. Nov 2017, 08:40
Beitrag # 8 von 9
Beitrag ID: #560886
Bewertung:
(6668 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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.


als Antwort auf: [#560881]

[Mini-AS] Place gun Starthilfe

NEU!
Beiträge gesamt: 180

22. Nov 2017, 09:43
Beitrag # 9 von 9
Beitrag ID: #560888
Bewertung:
(6657 mal gelesen)
URL zum Beitrag
Beitrag als Lesezeichen
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]
X