InDesign

Bilderkatalog ohne Handarbeit

(msc) InDesign kann in einem Arbeitsschritt mehrere Bilder importieren – und zwar per Drag und Drop vom Explorer oder von dem Photoshop-Dateibrowser (siehe Tipp «Maustricks für das schnelle Layouten»).

Für eine grössere Anzahl Bilder hat dieser Weg aber Nachteile. InDesign legt die importierten Fotos mit einigen Millimetern Versatz übereinander, was bei zehn, zwanzig oder mehr Bildern einen chaotischen Bilderhaufen ergibt. Das Sortieren und Anordnen der Fotos bringt einiges an Handarbeit mit sich. Die Alternative ist das nachfolgende Script: Es importiert alle Bilder aus einem Ordner in eine InDesign-Datei und zwar fein säuberlich in Zeilen und Spalten angeordnet. Das Script fragt nach dem Start als erstes nach dem Verzeichnis, in dem die zu importierenden Bilder zu finden sind. Als zweites ist die Zahl der Spalten anzugeben, d.h. wie viele Bilder in jeder Zeile zu finden sein sollen. In der nächsten Frage will das Katalog-Script wissen, wie viele Bilderzeilen pro Seite gewünscht werden. Die letzte Frage betrifft den Abstand zwischen den Bildern: Geben Sie hier in Millimetern an, wie weit die Bilder auseinander stehen sollen.

Danach legt das Script auch schon los. Falls die Bilder im Ordner nicht auf eine Seite passen, fügt das Script neue Seiten ein. Am besten verwendet man eine leere Datei; die Option «Doppelseiten» sollte nicht angekreuzt sein, da die Bilder dann auf rechten Seiten nicht richtig platziert werden.

Das Script läuft nur mit In Design CS für Windows; könnte aber auch für ältere Versionen oder den Mac angepasst werden. Sie finden es unten im Quellcode (den Sie nicht abzutippen brauchen: Das Script kann aus dem Downloadbereich heruntergeladen werden). Wenn Sie Katalog.vbs mit eigenen Erweiterungen ausstatten – z.B. als Bildunterschrift den Dateinamen einfügen –, dann schicken Sie doch bitte Ihre Variante des Scripts an schuessler@publisher.ch.

REM KATALOG ERSTELLEN
REM VBS-Script für Adobe InDesign
REM Getestet mit InDesign CS
REM (c) & (r) Matthias Schüssler, 15.11.2004
Set ID = CreateObject(«InDesign.Application»)
If ID Is Nothing Then
MsgBox «InDesign nicht gefunden!»
wscript.Quit
End if
If ID.Documents.Count = 0 Then
MsgBox «Kein Dokument geladen!»
wscript.Quit
End if
Titel = «Bilderkatalog erstellen»
set Shell = CreateObject(«Shell.Application»)
set Folder = Shell.BrowseForFolder(0, «Bilderordner wählen», 0, ssfDRIVES)
Cols = CLng(InputBox(«Spalten?», Titel, «5»))
Rows = CLng(InputBox(«Reihen?», Titel, «6»))
Margin = CLng(InputBox(«Abstand?», Titel, «10»))
Set FO = CreateObject(«Scripting.FileSystemObject»)
Set Fd = FO.GetFolder(Folder)
Set Filelist = Fd.Files
Set Page = ID.ActiveDocument.Pages.Item(1)
Pt = Page.MarginPreferences.Top
Pl = Page.MarginPreferences.Left
Pr = Page.MarginPreferences.Right
Pb = Page.MarginPreferences.Bottom
PH = ID.DocumentPreferences.PageHeight – Pt – Pb
PW = ID.DocumentPreferences.PageWidth – Pl – Pr
PicW = ((PW – Margin*(Cols-1)) / (Cols))
PicH = ((PH – Margin*(Rows-1)) / (Rows))
CountRows = 0
CountCols = 0
For Each File in Filelist
Ext = lcase(FO.GetExtensionName(File))
if ((Ext = «jpg») Or (Ext = «tif») Or (Ext = «gif»)) then
FN = File.ParentFolder &»\»& File.Name
Set Pic = Page.Place(FN)
Set frame = Pic.Parent
OffR = Margin*(Cols-1) / (Cols-1)*CountCols
OffC = Margin*(Rows-1) / (Rows-1)*CountRows
frame.GeometricBounds = array((CountRows*PicH) +Pt+OffC, (CountCols*PicW) +Pl +OffR, ((CountRows+1)*PicH) +Pt+OffC, ((CountCols+1)*PicW) +Pl +OffR)
frame.fit 1668247152
frame.fit 1718906723
CountCols = CountCols +1
if CountCols = Cols then
CountCols = 0
CountRows = CountRows +1
end if
if CountRows = Rows then
CountCols = 0
CountRows = 0
Set Page = ID.ActiveDocument.Pages.Add
Pl = Page.MarginPreferences.Left
end if
end if
Next


Automatischer Bilderkatalog: Das Publisher-Script importiert die Bilder aus einem Ordner und ordnet sie.

Quelle: Publisher, Mittwoch, 8. Dezember 2004

Rubrik und Tags:

Faksimile

Metadaten
Thema: Prepress-Tipps
Nr: 5707
Ausgabe: 04-6
Anzahl Subthemen: 4

Obsolete Datenfelder
Bilder: 2
Textlänge: 250
Ort:
Tabb: FALSCH