InDesign
JavaScript
XML-Rules
InDesign Skripting und XML
19. Juni 2010 10:00 Uhr bis 17:00 Uhr Raum 171
Gregor Fellenz
Mediengestalter fr Digital- und Printmedien Studium Druck- und Medientechnologie, HdM Stuttgart pagina GmbH, Tbingen
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
bersicht DTP und XML Boardmittel von InDesign kennenlernen
Zusammenspiel von strukturierten Daten und Satzautomation
XML Rules der XPath zum Erfolg
Den XML-Funktionsumfang von InDesign erweitern
Workflows Muss es immer Roundtripping sein?
Die Folien zum Download:
http://www.indesignblog.com/hdm
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
Warum berhaupt XML Weil wir nichts anderes haben?
Datenchaos: Formate, Datenprobleme, Konvertierungsprobleme
Wiederverwertbarkeit: Langzeitarchivierbarkeit, Kompatibilitt
Produktion und Standardisierung: Medienbrche beachten
Mehrfachverwertung der Daten: Print, E-Book, Smartphones, Tablets, Internet, DVD
XMLXML
XML XMLXML
XML
Dienstleister
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
Extensible Markup LanguageStandardisiertes Dateiformat
Austausch von Dokumenten, Definition von Datenstrukturen
Sprache zur Beschreibung von Dokumentstrukturenbzw. eine Metasprache, die eine abstrakte Syntax fr Auszeichnungssprachen definiert
Dokumentzentriert vs. datenzentriert
Keine Datenbank
Auch im Bereich Publishing?
Mit Strukturierung wurde schon immer das Erfassen des Informationsgehaltes erleichtert.
Umgesetzt durch Formatierung wird indirekt die Struktur vom Leser wahrgenommen.
Aber: XML ist nur eine Sprache
Die Kunst, Information zu strukturieren, wird durch XML nicht ersetzt.
InDesign Satzautomationbungsaufgabe
Beispiel XML-Reprsentation eines Rezeptes
ffnen Sie die Dateien 01_kochbuch_beispiel.xml und 02_kochbuch.dtd aus dem Ordner 10_xml_grundlagen in einem XML-Editor
! Analysieren Sie die DTD anschauen
! Fgen Sie der XML-Instanz ein neues Rezept hinzu
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
DTP vs. XMLWesentliches Feature von DTP-Programmen ist die freie Gestaltung von Layouts
Seiten- und Rahmenbasiertes arbeiten
Keine Festlegung des Datenstroms Main Story
Arbeitsweise vom Endprodukt (Druck) inspiriert
XML-Dokumente sind stark strukturiert
Hierarchien und Kapitelstrukturen
Ein einziges Wurzelelment bestimmt die Datenstruktur und das Datendesign
Grammatiken (DTD) von den Inhalten (Struktur und Semantik) inspiriert
Vergleiche dazu: Office Open XML, IDML, XSL-FO etc. mit DocBook, xhtml, Verlags DTD
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
InDesign und XMLInDesign ist eine von vielen Applikationen die XML untersttzt.
Richtig erstellte InDesign-Dokumente knnen als XML weiterverwendet werden.
Nach entsprechender Anpassung kann InDesign beliebige XML-Dokumente formatieren.
Wozu und fr wen eigentlich? Dokumente liegen als XML vor.
hnliche Strukturen in wiederkehrenden Auftrgen/Projekten.
Dokumente sollen weiterverwendet werden.
Daten mssen als XML abgeliefert werden.
Bereitschaft sich mit der Technologie auseinanderzusetzen.
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
Typischer Workflow
Word Datenbank
EPub HTML Archiv
?XSLT XSLT
Wo kommen die Daten her?
Ist Roundtripping gewnscht?
Welche Zielformate sollen bedient werden?
Oder nur Teilstrecken... XML-Dokumente vorhanden Import
InDesign Dokumente vorhanden Export
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
XML in InDesign verwenden Grundstzlich: Dokument- und XML-Inhalte auseinanderhalten.
Struktur PaletteAnsicht -> Struktur ->
Strukturpalette [Alt +
STRG + 1]
bersicht ber die XML-Inhalte, Verknpfungsstatus, Strukturnderungen, Attribute, validieren
Navigation in der Strukturpalette ber Shortcuts
Tag-Marken fr Rahmen bzw. Text einblenden Ansicht -> Struktur
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
bersicht aller Icons der Struktur palette
Icon Beschreibung
Element (nicht platziert)
DOCTYPE Element
Textabschnitt
Text
Text (nicht platziert)
Abbildung
Abbildung (nicht platziert)
Tabelle
Tabellenzelle
Fuzelle (Tabelle)
Kopfzelle (Tabelle)
Attribut
Processing Instruction
Kommentar
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
Tags PaletteFenster -> Tags
Elemente anlegen, verwalten und zuweisen
Texteditor Bearbeiten -> Im Textmodus bearbeiten
[STRG + Y]
Mit eingeblendeten Tag-Marken gute Ansicht der Textauszeichnung
InDesign Satzautomationbungsaufgabe
XML Funktionen ffnen Sie die Datei 03_rezept-beispiel.indd in InDesign
! Machen Sie sich mit der Strukturpalette und den XML-Ansichtsoptionen vertraut
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
GrundfunktionenElemente knnen mit Absatz- und Format-vorlagen automatisch formatiert werden.
Formate zu Tags zuordnen Flyout Strukturpalette -> Formate zu
Tags zuordnen
Formaten werden Tags zugeordnet.
Tags knnen auf Formaten zugewiesen werden
Weitere Mglichkeiten: XML-Rules Mit einer XSL-Transformation Elementen
ber Attribute Styles zuordnen.
Attribut Beschreibung
aid:cstyle Zeichenformat
aid:pstyle Absatzformat
Namespace nicht vergessen: xmlns:aid=http://ns.adobe.com/AdobeInDesign/4.0/ [InDesign CS2]
xmlns:aid5=http://ns.adobe.com/AdobeInDesign/5.0/ [InDesign CS3]
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
Um das Whitespace Problem zu umgehen kann ein angepasstes Importskript verwendet werden. Download unter: http://www.indesignblog.com/
XML ImportDatei -> XML importieren
Viele kaum brauchbare Funktionen XSLT Anwenden
nur Subset von 1.0 Wiederholte Textelemente
kopieren nur fr stark regelbasierte Layouts
Whitespace wird vollstndig importiert und dargestellt oder wird vollstndig ignoriert.
InDesign Satzautomationbungsaufgabe
XML Importffnen Sie die Datei 04_rezept-template.indd in InDesign
! Importieren Sie die Datei 01_kochbuch_beispiel.xml Verknpfen Sie Tags und Formate Machen Sie sich mit den verschiedenen Mglichkeiten des Imports vertraut.
XML Skripting
! Analysieren Sie das Import Skript.
! Mit dem folgenden Code knnen Container Elemente in eigene Textrahmen + Objektsstil umgesetzt werden:
_node.insertTextAsContent("\r", XMLElementPosition.afterElement);
var _atf = _node.placeIntoInlineFrame ([15,50]).getElements()[0];
_atf.appliedObjectStyle = _oStyle;
_atf.fit(FitOptions.frameToContent);
! Erweitern Sie den Import fr Objektstile.
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
Tabellen InDesign untersttzt das CALS-Tabellenformat und sein eigenes Tabellenformat.
InDesign Tabellenformat Eher Softwarenah? Aufwndige Konvertierung notwendig.
CALS Tabellen OASIS Standard, kein xhtml aber Konvertierung vorhanden.www.oasis-open.org/specs/tablemodels.php
Formatzuweisungen ber Tags zu Formaten zuweisen
Formatierung mit einer XSL-Transformation ber Attribute:
Attribut Beschreibung
aid:table defines that the element is a table.
aid:trows total number of rows the table contains
aid:tcols total number of columns the table contains
aid5:tablestyle Table Style that formats the table [ab CS3]
aid:theader defines cells as being part of a header row.
aid:tfooter defines cells as being part of a footer row
aid5:cellstyle Cell Style that formats table cells [ab CS3]
aid:crows number of rows across which the cell spans
aid:ccols number of columns across which the cell spans
aid:ccolwidth column width of cell, measured in points.
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
BilderBilder werden automatisch gesucht wenn ein href Attribut vorhanden ist
Rudimentres Handling ber href Attribut.
Nur Import, Keine Gren, Aussschnitte etc.
Nur verlinkte Bilder mglich Einbetten ist grundstzlich nicht empfehlenswert.
InDesign Satzautomationbersicht | JavaScript | InDesign Objektmodell | InDesign Programmierung | InDesign XML
XML Export aus InDesign R