IT-MÜCKE

Scribus: Serienbriefe in Scribus erstellen [3.Update]

29.09.2011

Mit Scribus lassen sich dank eines Skriptes von Ekkehard Will auch Serienbriefe herstellen. Serienbriefe in Scribus zu erstellen hat mehrere Vorteile:

  • Das Layout lässt sich direkt in Scribus anpassen.
  • Hat man eine Briefvorlage in Scribus erstellt, kann dort direkt der Serienbrief erzeugt werden.
  • Scribus unterstützt Ebenen, die man einzeln für den Druck ein- und ausschalten kann.
  • Das Sktript ermöglicht eine sehr einfache Erzeugung von Serienbriefen aus CVS-Dateien mit Hilfe von Variablen.

Vergleiche ich das mit der äußerst umständlichen Serienbrief-Erstellung in OpenOffice, so fällt mir die Entscheidung zur Umsetzung von Serienbriefen in Scribus sehr leicht.

Um das Skript zu nutzen zu können müssen einige Voraussetzungen erfüllt werden. Im folgenden Text beschreibe ich Schritt für Schritt mein Vorgehen zur Erzeugung eines Serienbriefs.

  1. Vorbereitungen:
    1. Skript herunterladen: Scribus Generator
    2. Briefvorlage in Scribus erstellen
  2. Briefvorlage vorbereiten:
    1. Variablen in die Briefvorlage einbringen - siehe Anleitung zum Scribus Generator
  3. Datenexport/Datenimport vorbereiten:
    1. Sicherstellen, dass die veränderlichen Daten in einer CSV-Datei vorliegen:
      1. Trenner/Delimiter: Komma „,“ 
      2. Texte: Einschließen in doppelten Anführungszeichen "
      3. Spaltenüberschriften müssen mit Variablen übereinstimmen, z.B.: Spalte „nachname“ und Variable „%VAR_nachname%“
      4. Zeichensatz: UTF-8
      5. [2.Update: nach einer Überarbeitung durch Herrn Will ist dieser Schritt nicht mehr nötig] WICHTIG: das „&“-Zeichen in einem Firmennamen wird vom Skript nicht korrekt interpretiert - es müssen also alle Und-Zeichen „&“ vorher durch die HTML-Kodierung „&“ ersetzt werden. Unter Linux geht das so:
        $ sed 's/&/&/g' [infile.csv] > [outfile.csv]
        also z.B.:
        $ sed 's/&/&/g' adressenexport.csv > adressenimport.csv

Um die korrekten Spaltenüberschriften zu erhalten und den richtigen Delimiter/Trenner zu bekommen gehe ich wie folgt vor:

  1. Export aus Emnis in OpenOffice öffnen: dabei auf den korrekten Zeichensatz achten - in der Vorschau, die OO anzeigt, müssen die Umlaute lesbar sein. Bei Emnis ist es das bei „Westeuropa (ISO-8859-1)“.
  2. CSV-Vorlage in OpenOffice öffnen (diese enthält die korrekten Spaltenüberschriften, siehe oben): hier muss der Zeichensatz „Unicode (UTF-8)“ sein
  3. Daten aus dem Export in die Vorlage kopieren
  4. Vorlage Speichern als Import-Datei für den Scribus Generator
  5. Dabei Haken bei „Filtereinstellungen bearbeiten“ setzen (siehe Screenshot)
  6. Speichern und entsprechende Filter setzen (siehe Screenshot)

Scribus Generator ausführen:

  1. Wie in der Anleitung beschrieben in Scribus auf „Script“ → „Script ausführen“ klicken und das Script im Dateisystem aufrufen.
  2. Einstellungen für das Script vornehmen - „Output File Name“ kann leer bleiben, dann werden die Serienbriefe numeriert gespeichert.
  3. [Update] WICHTIG: beinhaltet das Scribus-Dokument Bilder, so muss das „Output Directory“ gleich dem Verzeichnis sein, in dem das Scribus-Dokument liegt (also dem Pfad bei „Scribus File“ entsprechen). Sonst werden die Bilder nicht ins PDF übernommen.
  4. „Generate“ klicken

So läuft das bei mir problemlos durch. Wichtig ist die Umwandlung von „&“-Zeichen in „&“ - sonst gibt es Fehlermeldungen.

Screenshots zum Anpassen der Filtereinstellungen in OpenOffice (siehe oben):

Tipp eines Besuchers meiner Webseiten:

„Es ist übrigens auch möglich, Variablen bei Bildern zu verwenden, sodass man z.B. bei Ausweisen für mehrere Personen die Bilder (Dateinamen) aus der CSV holen lassen kann. Dazu einfach im Dialog zur Bildauswahl als Namen %VAR_bild% verwenden und in der CSV den absoluten Pfad zum jeweiligen Bild definieren.“

Danke, Larsen, für diesen Hinweis!


Ähnliche Themen im blog:
scribus


zurück

Cookies helfen bei der Bereitstellung von Inhalten. Durch die Nutzung dieser Seiten erklären Sie sich damit einverstanden, dass Cookies auf Ihrem Rechner gespeichert werden. Weitere Information