Quantcast
Channel: Adobe InDesign Skriptwerkstatt - HilfDirSelbst.ch
Viewing all 8700 articles
Browse latest View live

Probleme mit hyperlinkTextSource (Ungültiger Wert der Methode "add")

$
0
0
Hallo Ferestes,
Du könntest per GREP-Suche im Suchergebnis Deiner ersten GREP-Suche suchen.
Das würde bei Erfolg ein Objekt vom Typ Text hervorzaubern. Hab's nicht getestet, aber probier's mal aus…
*****
Mit herzlichem Gruß,
Uwe Laubender ... Adobe InDesign Skriptwerkstatt 14. Nov 2017, 08:11 (Uwe Laubender)

Probleme mit hyperlinkTextSource (Ungültiger Wert der Methode "add")

$
0
0
Hallo Uwe,

stimmt, vielen Dank!
... Adobe InDesign Skriptwerkstatt 14. Nov 2017, 10:21 (Ferestes)

Versehentlich "Indic Preferences"-Script ausgeführt. Was tun?

$
0
0
Hallo zusammen,

ich bin gerade dabei einen Katalog in InDesign CC 2018 aufzubauen. Dabei nutze ich das geniale InDesign-Skript "Autospalte 2" von Gerald Singelmann. Vielen Dank an dieser Stelle dafür :-)

Nun habe ich versehentlich daneben geklickt und das von InDesign vorinstallierte Skript "Indic Preferences.js" ausgeführt. Man erkennt leider nicht, was dieses Skript im Hintergrund alles macht. Okay, es hilft dabei, wenn man was in Hindi oder Bengali setzen möchte. Aber ich brauche das nun mal nicht :-/

Ich habe das dann gleich gegoogelt und Folgendes gefunden:

https://indesignsecrets.com/...scripts-indesign.php

Zitat Indic Preferences. This script is actually not in the Samples folder; it’s loose at the top level of the Scripts panel. Indic refers to languages from the Indian subcontinent. If you’re typesetting in Hindi or Bengali or something like that, you’d use this to turn on an internal setting that helps with those languages. If you don’t, then ignore it. In fact, you should specifically not run it because there is no user interface and there is no way (other than rebuilding your preferences) to reverse it.


Hm, man soll es also nicht ausführen, wenn man es nicht braucht, und man kann es nicht rückgängig machen :-/

Jetzt meine Frage:
Welche Einstellungen nimmt das Programm im Hintergrund vor?
Und: Kann ich trotzdem problemlos weiterarbeiten?

Vielen Dank im Voraus für eure Hilfe.

Viele Grüße
Doris
... Adobe InDesign Skriptwerkstatt 16. Nov 2017, 09:06 (wakie65)

Versehentlich "Indic Preferences"-Script ausgeführt. Was tun?

$
0
0
Das Script besteht nur aus einer Zeile:
Code
app.setApplicationPreferences(LanguageAndRegion.indic); 


Alternativen wären etwa
Code
app.setApplicationPreferences(LanguageAndRegion.UNITED_STATES_ENGLISH); 
app.setApplicationPreferences(LanguageAndRegion.GERMANY_GERMAN);


Den Befehl kannte ich noch nicht, gleich mal für Englisch/Deutsch ausprobiert. Grob zusammengefasst werden Änderungen vorgenommen in:
• XML Einstellungen
• Grundlegende Applikations-weite Textattribute, auch im Basis-Style
• Seitenvoreinstellungen
• dargestellte Masseinheiten
• Einstellungen zum automatischen Layout

Das sind alles Voreinstellungen die sich auf neue Dokumente auswirken. Ob vielleicht auch mehr/andere Paletten verfügbar werden usw. sehe ich nicht.

Zitat Was tun?

Vielleicht hilft ja, ein anderes Script auszuführen:
Code
app.setApplicationPreferences(LanguageAndRegion.GERMANY_GERMAN); 


Ansonsten sind wohl die Preferences dran ...

Grüße,
Dirk
... Adobe InDesign Skriptwerkstatt 16. Nov 2017, 10:19 (Dirk Becker)

Versehentlich "Indic Preferences"-Script ausgeführt. Was tun?

$
0
0
Hallo Dirk,

vielen Dank für deine schnelle Antwort :-)

Ich muss zugeben, ich habe noch keinerlei Erfahrungen mit Skripten :-/

Ich habe aber mal deinen Vorschlag mit dem deutschen Skript getestet.

Code
app.setApplicationPreferences(LanguageAndRegion.GERMANY_GERMAN); 


Wenn ich dieses Skript ausführe und ein neues Dokument öffne, ändert sich zumindest mal das Wörterbuch auf "keine Sprache". Durch das Indic-Skript war das auf "Englisch: Großbritannien". Das ist das, was mir auf den ersten Blick auffällt.

Ob ich jetzt mit diesem Skript schon auf der sicheren Seite bin, weiß ich leider nicht. Aber wenn ich das richtig verstehe, wirkt sich das nur auf neue Dokumente aus. Dann dürfte mit meinen bestehenden Dokumenten des Kataloges doch hoffentlich noch alles in Ordnung sein, oder?

Ich danke dir auf jeden Fall schon mal :-)
Und ich werde mich in Zukunft mal mit dem Skripten beschäftigen.

Liebe Grüße
Doris
... Adobe InDesign Skriptwerkstatt 16. Nov 2017, 11:40 (wakie65)

[Mini-AS] Place gun Starthilfe

$
0
0
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?
... Adobe InDesign Skriptwerkstatt 20. Nov 2017, 12:04 (NEU!)

PDF-Importoptionen nachträglich global ändern

$
0
0
Also, ich habe u.a. dieses Script in meinen StartUp-Scripts…


#targetengine "session"
main();

function main()
{var myEventListener1 = app.addEventListener("afterPrint", setCopys, false);}

function setCopys(myEvent)
{myEvent.parent.printPreferences.copies = 1;
}



Dass liesse sich doch auch einfach umstricken zu "beforeImport" und die dementsprechende PDF-Option. Ich bin kein Java-Systax-Kenner, aber mit…
PDF attribute n : PDF attributes.
elements
contains events, event listeners.
properties
class (type, r/o) : The class descriptor type.
object reference (PDF attribute, r/o) : An object reference for the object.
page number (integer, r/o) : The page number of the PDF document page to place.
parent (specifier, r/o) : The parent of the PDF attribute (a PDF or imported page). Can return: PDF or imported page.
PDF crop (crop art/‌crop PDF/‌crop trim/‌crop bleed/‌crop media/‌crop content visible layers/‌crop content all layers, r/o) : The type of cropping to apply.
properties (record) : A property that allows setting of several properties at the same time.
transparent background (boolean, r/o) : If true, the background of the PDF is transparent.

……und dem oberen Scriptschnippsel könnte man doch flink ein StartUp-Script basteln? Vielleicht so:
function PDFimportDefault(myEvent)
{myEvent.parent.PDFattribute.PDFcrop = {crop bleed};


…aber wie gesagt, kann die JS-Referenzierung nicht :-(
... Adobe InDesign Skriptwerkstatt 20. Nov 2017, 12:16 (NEU!)

[Mini-AS] Place gun Starthilfe

$
0
0
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

... Adobe InDesign Skriptwerkstatt 20. Nov 2017, 14:19 (NEU!)

[Mini-AS] Place gun Starthilfe

$
0
0
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 ... Adobe InDesign Skriptwerkstatt 20. Nov 2017, 14:56 (Uwe Laubender)

[Mini-AS] Place gun Starthilfe

$
0
0
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?
... Adobe InDesign Skriptwerkstatt 20. Nov 2017, 15:32 (NEU!)

[Mini-AS] Place gun Starthilfe

$
0
0
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 ... Adobe InDesign Skriptwerkstatt 20. Nov 2017, 15:37 (Uwe Laubender)

[Mini-AS] Place gun Starthilfe

$
0
0
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 ... Adobe InDesign Skriptwerkstatt 20. Nov 2017, 15:44 (Uwe Laubender)

[Mini-AS] Place gun Starthilfe

$
0
0
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 ... Adobe InDesign Skriptwerkstatt 21. Nov 2017, 22:13 (Hans Haesler)

[Mini-AS] Place gun Starthilfe

$
0
0
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 ... Adobe InDesign Skriptwerkstatt 22. Nov 2017, 08:40 (Uwe Laubender)

[Mini-AS] Place gun Starthilfe

$
0
0
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.
... Adobe InDesign Skriptwerkstatt 22. Nov 2017, 09:43 (NEU!)

GREP: Zahl und Einheit spationieren für Fortgeschrittene (oder Theoretiker)

$
0
0
Liebe Leser,

ich probiere gerade, eine einigermaßen "sorgenfreie" GREP-Suche zu erstellen, um Zahlen und Einheiten mit einem Achtelgeviert zu spationieren.

Dabei möchte ich diese Abfolgen finden:
100mm
100 mm

aber diese hier nicht (damit ich sie nicht immer und immer wieder finde):
100[achtelgeviert]mm

Vereinfacht sieht das Muster aktuell so aus:

Suchen: (\d+)(?<!~<) ?(?=mm\>)
Ersetzen: $1~<

Also:
– (\d+) such nach einer oder mehr Ziffern (als Suchgruppe)
– (?<!~<) hör auf wenn schon ein Achtelgeviert da ist
– ? ein Space oder keiner
– (?=mm\>) schau ob danach eine Einheit folgt (im Beispiel nur mal die mm drin, sind natürlich mehr als das)
– $1~< ersetze die gefundene Zahl und häng ein Achtelgeviert an

Das funktioniert auch bestens, und ich finde nicht ständig schon "erledigte" Fälle (wie wenn ich nach \s suchen würde).




"Schönheitsfehler" an der Sache ist, dass ich die Zahl mit suche und dann wieder mit sich selbst ersetze.

Schöne fände ich eine dieser Suchstrings:
(?<=\d)(?<!~<) ?(?=mm\>) oder
(?<=\d(?<!~<)) ?(?=mm\>)

Es stellt die Ziffer auch in einen Lookahead, schließt dann (geklammert oder in Serie) ein möglicherweise vorhandenes Achtelgeviert aus und schaue nach ob eine Einheit folgt.

Die Suche funkioniert auch – es findet die Stelle zwischen 100 und mm und markiert diese (also sogar das "nichts" in "100mm"), wenn da ein Space drin ist oder keiner (aber nicht beim Achtelgeviert).
Allerdings klappt das Einfügen nur beim Fall "100 mm", aber nicht bei "100mm" ... d.h. beim Klick auf "Suchen" wird das Nichts zwischen 100mm gefunden, aber beim Klick auf "Ersetzen" wird dann nichts ersetzt.

Gibt's dafür eine Lösung oder kann man einfach nicht "Nichts durch Etwas" in Indesign ersetzen?

Vielen Dank für jede Idee
Bastian
... Adobe InDesign Skriptwerkstatt 24. Nov 2017, 15:46 (Bastian)

GREP: Zahl und Einheit spationieren für Fortgeschrittene (oder Theoretiker)

$
0
0
Antwort auf: Gibt's dafür eine Lösung oder kann man einfach nicht "Nichts durch Etwas" in Indesign ersetzen?

Letzteres ist der Fall.

Gruß Kai Rübsamen
_______________________

Nur noch 1 Platz frei am 7.12.: Du suchst den idealen Workflow zwischen Text und Layout? Beim InCopy-Seminar in Bremen zeige ich Dir, wie Du deine Produktions- und Korrekturzeiten erheblich verkürzen kannst. Weitere Infos und Anmeldung: medienplantage ... Adobe InDesign Skriptwerkstatt 24. Nov 2017, 19:06 (Kai Rübsamen)

Steuerung der Prozesse eines Hotfolders über eine Palette

$
0
0
Hallo Martin,

wenn man auf native Scriptsprachen wie Applescript oder eben VBS ausweicht wäre die Einrichtung eines Hotfolders vielleicht einfacher¿!
Lieben Gruß

Hans-Gerd Claßen ... Adobe InDesign Skriptwerkstatt 25. Nov 2017, 15:08 (-hans-)

graphiclines löschen

$
0
0
Hallo,

wenn ich das folgende Skript ausführe werden mir nicht alle Linien auf einmal gelöscht sondern es bleibt immer eine übrig:
Code
var _doc = app.activeDocument.activeLayer; 
var _linien = _doc.graphicLines;

//.leftLineEnd.ArrowHead.NONE;


for (k = 0; k < _linien.length; k++) {

_linien[k].remove()

};


Außerdem möchte ich nur jene Linien löschen die keine Spitzen oder Dreiecke haben - ist noch auskommentiert.

Habt ihr eine Idee warum nicht alle Linien auf einmal gelöscht werden bzw. wie ich nur die Linien ohne Spitzen löschen kann?
... Adobe InDesign Skriptwerkstatt 4. Dez 2017, 14:08 (faxinger)

hyperlinkURLDestinations schon von einem anderen Objekt verwendet

$
0
0
Hallo zusammen

Ich habe ein Problem mit identischen URLs im selben Dokument, die ich in Hyperlinks umwandeln möchte.

Wenn ich in der for-Schleife die gefundenen URLs abarbeite, beschwert sich das Skript bei 'hyperlinkURLDestinations.add()', dass diese Destination schon von einem anderen Objekt verwendet wir.
Hier mein Code dazu:
Code
var _myURL = _myDoc.findGrep(); 

for (var x = 0; x < _myURL.length; x++){ //Schleife durch alle gefundenen URLs, verlinke neu
var _URL = _myURL[x]; // Text-Objekt
var _source = _myDoc.hyperlinkTextSources.add(_URL); //hier muss Text sein, weil die Quelle ein Text-Objekt sein muss
var _URLstring = _myURL[x].contents; // String
var _dest = _myDoc.hyperlinkURLDestinations.add(_URLstring, {name: _URLstring}); //Destination will einen String
var _hyperlink = _myDoc.hyperlinks.add(_source, _dest, {name: _URLstring});
}


Ich habe versucht, die Destination über die ID oder den Namen anzusteuern, bin aber von der Syntax grade überfordert.

Vielleicht hat jemand eine Idee?

Danke und Gruss
Gaby ... Adobe InDesign Skriptwerkstatt 4. Dez 2017, 14:30 (Gaby Leuenberger)
Viewing all 8700 articles
Browse latest View live