#12 / 2018
11/16
© elidr, flickr, CC BY-NC-ND 2.0

automatisierungstechniken und Workflows mit InDesign

Adobe InDesign ist das Handwerkszeug zur professionellen Produktion von seitenbasierten Medien. Viele Routinearbeiten, die in der Ausführung Zeit und Nerven kosten, können automatisiert werden. Der riesige Funktionsumfang des Programms bleibt leider oft ungenutzt. Wenn dann noch der Workflow und die Anbindung der Datenquellen über die richtigen Schnittstellen optimiert wird, macht die Arbeit wieder richtig Spaß.

Workflow und die Arbeitstechniken 

Die Verwendung von Templates, Musterseiten und Formaten und eine systematische Arbeitsvorbereitung sollen hier nicht weiter besprochen werden, sind aber die Basis aller fortgeschrittenen Techniken.

Reguläre Ausdrücke aka GREP

Eine oft übersehene Perle im Funktionsumfang von InDesign ist die Suche per GREP. Mit den dort eingesetzten Regulären Ausdrücken kann man viel Zeit sparen und die Nerven schonen. Bei GREP wird nach Mustern gesucht, so lassen sich z.B. mikrotypografische Bereinigungen im Handumdrehen erledigen, Vereinheitlichungen vornehmen und Layouts automatisch formatieren.

Der Klassiker unter den Suchmustern ist die Suche nach einer beliebigen Ziffer. Anstatt einzeln nach 0,1,2,3 etc. zu suchen, kann mit dem Suchausdruck \d eine beliebige Ziffer gefunden werden. Im einfachsten Fall werden hier 10 Suchläufe zu einem. Wenn nun noch die Anzahl der Ziffern mit \d+ variabel wird – damit wird dann auch 10, 251 und 9010 gefunden –, ist eine manuelle Suche praktisch nicht mehr umsetzbar. 


Am 28. Juni 2018 führt der Autor des Artikels, Gregor Fellenz, in einem Webinar ins Thema InDesign-Automatisierung ein. Sichern Sie sich jetzt Ihren Platz im Webinar!



Reguläre Ausdrücke haben ihren Ursprung in der Informatik und sehen auf den ersten Blick oft unübersichtlich und komplex aus. Dies ist der Abstraktion geschuldet, die gleichzeitig erst die Mächtigkeit der Suchausdrücke ermöglicht: Solange die Anfragen präzise formulierbar sind, kann man praktisch alles finden. 

Zusätzlich gibt es die Möglichkeit, in Absatzformaten so genannte GREP-Stile festzulegen. Hier werden Reguläre Ausdrücke definiert, die innerhalb des Textes besonders formatiert werden sollen. Oft verwendet wird die Auszeichnung von Ziffern im Buchsatz oder die Hervorhebung von bestimmten Namen.

Falls Sie sich schon ein wenig mit GREP auskennen, werfen Sie doch mal einen Blick auf das Skript ChainGREP. In der Praxis ist es oftmals schneller, mehrere einfache GREP-Ersetzungen zu formulieren und hintereinander auszuführen, als lange an einer komplexen Abfrage zu feilen. Wenn die Aufgabe wiederholt ausgeführt werden soll, ist es jedoch mühsam, die einzelnen Abfragen immer wieder herauszusuchen und hintereinander auszuführen. Mit dem Skript ChainGREP können mehrere Suchen und Ersetzen-Abfragen hintereinander geschaltet werden! Eine ausführliche Anleitung mit Video finden Sie unter: https://bit.ly/2KK7Vy6 


Falls Sie noch nie ein Skript installiert haben, lesen Sie alles dazu im nächsten Abschnitt.

 

Abläufe mit JavaScript steuern

Die mächtigste Möglichkeit zur Automatisierung von InDesign ist der Einsatz von Skripten. Sie werden meist in der Programmiersprache JavaScript erstellt und erledigen nervende, manuelle Tätigkeiten. Fast der komplette Funktionsumfang von InDesign und noch einige Zusatzfunktionen lassen sich per Skript steuern. D.h. prinzipiell ist jeder Ablauf, den sie manuell ausführen können, skriptbarDazu kommt noch die Möglichkeit, auf das Dateisystem und Schnittstellen zuzugreifen und eigene grafische Benutzeroberflächen zu erstellen.

Klar ist, dass nur Abläufe sinnvoll skriptbar sind, die eindeutig zu beschreiben sind und sich oft wiederholen. Grob kann man Skripte in die folgenden Kategorien einteilen:

Kleine Helferlein

Immer wiederkehrende drei, vier Klicks können gut von einem kleinen Skript erledigt werden. Ob Spaltenbreiten einstellen, Bilder austauschen, Marginalien einfügen: Sobald die Anforderungen definiert sind, steht einem Skript nichts mehr im Weg. 

Workflows

Die Königsdisziplin sind vollständige Workflows. Egal ob Buch, Zeitschriftenartikel, technische Dokumentation oder Katalog – mit strukturierten Quelldaten können Sie Dokumente automatisch aufbauen. Für die kreativen Arbeiten und das manuelle Feintunen bleibt dann mehr Zeit. Solche Automatisierungen sind fast immer individuell an die Datenquelle (XML, Datenbank, REST-Schnittstelle oder systematische Word-Dokumente) und das Ziellayout angepasst. Im Bereich der digitalen Medien können sowohl E-Books als auch digitale Magazine mit Hilfe von Skripting effizienter erstellt werden. 

„Neue“ Funktionen 

Durch die geschickte Kombination von vorhandenen InDesign-Befehlen werden neue Funktionen erstellt. Mit einer zusätzlichen grafischen Benutzeroberfläche wird die Bedienung sehr einfach. Beispiele wären die Generierung von Barcodes (z.B. BookBarcode https://bit.ly/2HUtvSB von Marc Autret) oder die Verwendung von Endnoten in CS6 (Endnotes for InDesign https://bit.ly/2InDm2T von Gregor Fellenz).

Skripte finden

Im Ordner „Anwendung“, Unterordner „Samples“ des Bedienfelds „Skripte“ (Fenster > Hilfsprogramme > Skripte) finden sich die bei InDesign mitgelieferten Beispielskripte. Diese sind aber nur ein Bruchteil der bereits vorhandenen Skripte. Im Internet finden sie inzwischen Hunderte von Skripten für die verschiedensten Einsatzbereiche. Eine vollständige Liste aller Skripte, die ich kenne, finden Sie in der ständig gepflegten Übersicht unter https://bit.ly/2I2F3Uc

Wer die Skripte kennt, wird im Arbeitsalltag immer wieder Situationen finden, wo diese produktiv eingesetzt werden können, und seine Maus entsprechend schonen. Außerdem erhalten Sie durch das Herumprobieren ein Gefühl, was mit Skripting möglich ist. 

Skriptinstallation

Das Bedienfeld „Skripte“ zeigt die Ordner und Dateien von zwei bestimmten Dateipfaden auf der Festplatte an. Alle Skriptdateien, die dort liegen, können per Doppelklick gestartet werden.

Sie finden im Bedienfeld die beiden Ordner „Anwendung“ und „Benutzer“. Die Skripte im Ordner Anwendung sind für alle Benutzer des Systems erreichbar. Skripte im Ordner Benutzer sind nur für den gerade angemeldeten Benutzer erreichbar. Ich empfehle neue Skripte in den Ordner Benutzer zu kopieren, da Sie hier Schreibrechte haben.

Zur Installation müssen die Skripte in die Ordner kopiert werden. Am einfachsten erreichen Sie den Ordner im Dateisystem über das Kontextmenü im Skripte-Bedienfeld und die Funktion Im Explorer bzw. Im Finder anzeigen (das Kontextmenü wird unter Windows durch die rechte Maustaste, unter Mac OS mit CTRL + Mausklick aktiviert). Im sich öffnenden Explorer bzw. Finder navigieren Sie dann in den Unterordner Scripts Panel

 

Wenn Sie nun zu InDesign zurückwechseln, erscheinen die Skripte im Bedienfeld.

JavaScript

InDesign kann mit JavaScript, VBScript (Windows) und AppleScript (Mac) automatisiert werden. Da die letzteren plattformabhängig sind, werden die meisten Skripte in JavaScript entwickelt. Ein weiterer Vorteil ist, dass die Sprache auch in der Web-Programmierung eingesetzt wird. Der Sprachkern ist kompatibel, lediglich der Zugriff über das Objektmodell (Document Object Model) auf Webseiten bzw. InDesign unterscheidet sich. 

InDesign Objektmodell

Es gibt sehr viele Funktionen und Objekte in InDesign. Nicht nur die Funktionen aus dem Menü, sondern auch alle Elemente eines Dokuments, angefangen von der Musterseite über die Farbfelder bis zu jeder Textformatierungsoption, müssen per Skript adressierbar sein. Mit wenigen Ausnahmen gilt die Regel: Alle Funktionen, Attribute und Elemente sind im Objektmodell enthalten.

Mit JavaScript und dem Objektmodell lassen sich nun beliebige Skripte erstellen. 

Schnittstellen zu Datenquellen

Für einen automatisierten Workflow wird eine Datenquelle und die passende Schnittstelle benötigt. Mit Hilfe von Plugins oder Skripting kann relativ leicht auf XML, CSV (Comma separated Values) und Excel zugegriffen werden. Mit ein bisschen Aufwand können auch sogenannte REST-APIs (letztlich Webseiten in maschinenlesbarer Form) und Datenbanken angesprochen werden. 

Strukturierte Daten 

Grundsätzlich ist es gar nicht so wichtig, ob die Daten in XML, CSV einer Datenbank oder über eine API (Schnittstelle) zur Verfügung gestellt werden. Zunächst ist es wichtig, dass die Daten eine gleichartige Struktur haben. So reicht es im einfachsten Fall, dass festgelegt ist, welche Daten in welche Spalte einer Excel-Datei stehen. So ist ein Workflow programmierbar: Es ist bekannt, welche Daten kommen und wie diese verarbeitet werden sollen. Die zweite, nicht weniger wichtige Anforderung ist, dass die Daten einer Grammatik oder einem Schema folgen. Sie sind somit durch eine Validierung prüfbar. 

eXtensible Markup Language 

XML ist zunächst eine Sprache zur Beschreibung von Dokumentstrukturen bzw. eine Metasprache, die eine abstrakte Syntax für Auszeichnungssprachen definiert. Der berühmteste Vertreter dieser Familie ist sicherlich HTML, das für die Codierung von Webseiten verwendet wird. Allerdings ist HTML streng genommen kein XML, aber recht nah verwandt. 

XML hat im Bereich Publishing eine relativ große Bedeutung, weil sie das Problem von Inline-Formatierungen und Hierarchie intuitiv und technisch sauber löst. 

Single Sourcing vs. Roundtripping

Die Frage für den Print-Workflow ist aber, wie kommen die Daten elegant aus der Datenquelle (z.B. dem Content Management System) in das InDesign-Dokument.

Für die Anbindung der Datenquelle stehen zwei grundsätzliche Wege zur Verfügung. Der einfache Weg ist, das generierte Dokument von der Datenquelle abzukoppeln und möglichst stark zu automatisieren – das sogenannte Single Source Publishing. Der Nachteil ist, dass eventuelle Korrekturen via Doppelpflege in der Datenpflege nachgezogen werden müssen. Allerdings vermindert sich die Komplexität bei der Bearbeitung erheblich. Dadurch können Anwender oder Dienstleister „normal“ weiterarbeiten und müssen die Datenstrukturen nicht im zusätzlich Layout Dokument nachpflegen.

Damit die Anzahl der Korrekturen möglichst gering ist, sollte in einen hohen Automatisierungsgrad investiert werden.  

Alternativ steht die Möglichkeit einer bidirektionalen Anbindung, dem sogenannten Roundtripping zur Verfügung. Hier werden nach der Freigabe, die korrigierten Enddaten wieder in die Datenquelle zurückgespielt. Dieser Ansatz klingt auf den ersten Blick einleuchtend, kommt aber mit einer deutlich höheren Prozesskomplexität, Durchlaufdauer und Fehlerrate daher. 

Auch wenn sich der Roundtripping-Workflow in der Verlagsbranche große Beliebtheit erfreut, sollte man bedenken, dass für digitale Produkte fast ausschließlich Single Source Workflows eingesetzt werden. Eine Entscheidung für einen Workflow kann immer auf die individuellen Anforderungen des Projekts getroffen werden. 

Praxisbeispiel: Wordpress und InDesign im Cloud Publishing verbinden

Mit meinem Werkzeug press2id ist die Anbindung von Wordpress an InDesign als Open Source Software möglich. So können einfach Artikel aus dem Internet in InDesign geladen werden. Das Konzept basiert auf einem Single Sources Workflow, entsprechend gibt es aktuell keinen Rückkanal zur Wordpress-Datenbank.  

Sie finden das Tool auf Github unter https://bit.ly/2IngWyM

Installieren Sie das Skript wie oben beschrieben und starten Sie es mit einem Doppelklick. Tragen Sie die URL eines Wordpress-Blogs ein oder verwenden Sie meinen www.indesignblog.com

Wählen Sie nun einen Artikel aus der Auswahlliste. Mit dem Button „Place“ laden Sie den Artikel in die PlaceGun von InDesign. Die Verknüpfung von HTML-Elementen wird dann über Absatz- und Zeichenformate hergestellt. Bilder werden platziert und das Ergebnis ist bereit für das Feinlayout. 

 

Die Lösung press2id geht den Weg über REST und JSON über eine sichere Web-Verbindung mit HTTPS. Technisch kann man damit beliebige REST-Schnittstellen anbinden und so InDesign befüllen. 


Gregor Fellenz

ist Entwickler, Trainer und Projektleiter. Ausbildung zum Mediengestalter. Studium Druck- und Medientechnik an der Hochschule der Medien Stuttgart. Seit 2004 beschäftigt er sich beruflich mit Publishing-Workflows für Print und digitale Medien. Sein Schwerpunkt liegt auf der auto­matisierten Erstellung von Publikationen mit InDesign und XML. Hier seine Webseite https://www.publishingx.de