Dienstag, 18. März 2008

EPS zu SVG konvertieren (EPS2SVG)

Hin und wieder kommt man in die Verlegenheit ein Vektorformat in ein anderes überführen zu müssen. Beispielsweise EPS in SVG. Da inkscape (noch) kein EPS versteht bleibt nur der Umweg über Drittprogramme.

An dieser Stelle ein kleines Howto.

Benötigt wird:
  • pstoedit (z.B. Version 3.45)
  • Ghostscript (z.B. GPL Ghostscript 8.61)
  • GNU plotutils für Win32 (wählen Sie in diesem Fall den Download Binaries) oder andere (z.B. Version 2.4.1)
  1. Laden Sie die Programme herunter und installieren bzw. entpacken (im Falle der plotutils) Sie sie.
  2. Damit pstoedit auf Ghostscript und die plotutils zugreifen kann, müssen unter Windows noch die Pfade der /bin-Verzeichnisse von Ghostscript und den plotutils in die %PATH%-Umgebungsvariable aufgenommen werden. Exemplarisch an dieser Stelle der Vorgang für Windows - Nutzer anderer Systeme müssen diesen Schritt auf ihr System angepasst ausführen.

    • Linux:
      Stichwort: PATH="$PATH:/path/to/bin"

    • SystemeigenschaftenWindows Vista:
      Systemsteuerung -> System und Wartung -> System.
      Dort auf Einstellungen ändern (siehe rechts).
      In den Systemeinstellungen auf den Reiter Erweitert und dort auf den Button Umgebungsvariablen rechts unten klicken.

    • xp_path Windows XP:
      1. Rechtsklick auf den Arbeitsplatz.
      2. Aus dem Kontextmenü Eigenschaften auswählen.
      3. Auf der Eigenschaften-Seite den Tab Erweitert wählen.
      4. Auf den Knopf Umgebungsvariablen klicken.


    Im neuen Fenster bei den Benutzervariablen für XYZ (oben) die Variable PATH wählen und auf Bearbeiten klicken (Alternative: Doppelklick auf PATH).
    Dort dann die Pfade zu Ghostscript und den plotutils an die bestehenden Einträge anhängen (mit Semikolon [bei Linux mit Doppelpunkt] von den vorhandenen trennen).

    Beispiel:
    Eine;Menge;alte;Einträge;C:\Program Files\gs\gs8.61\bin;C:\plotutils-2.4.1-4-bin\bin

    Hinweis
    : Die Pfadangaben mögen sich bei Ihnen - je nachdem welche Pfade Sie beim entpacken/installieren gewählt haben - unterscheiden. Wichtig ist, dass Sie jeweils die Pfade zu den bin-Verzeichnissen eintragen und nicht nur den Stammpfad zum Programm.
  3. Danach öffnen Sie eine Eingabeaufforderung und wechseln in das Installationsverzeichnis von pstoedit.
    Hinweis: befinden Sie sich unter Windows Vista ist es sinnvoll die Eingabeaufforderung als Administrator zu öffnen (Rechtsklick -> Als Administrator ausführen), da es sonst sein kann, dass das in der Kommandozeile ausgeführte Programm die Ausgabedatei nicht schreiben kann. Hierbei gibt es keine Warnung seitens pstoedit, sondern die Ausgabedatei wird lediglich nicht angelegt.
  4. Um eine eps-Datei mittels Ghostscript und den plotutils in SVG zu konvertieren geben Sie auf der Kommandozeile folgendes ein:

    pstoedit -f plot-svg Pfad\zur\Eingabedatei.eps Pfad\zur\Ausgabedatei.svg

    1. der Schalter -f legt das Format zur Konvertierung fest - in unserem Fall (plot-svg) sollen die plotutils zur Erzeugung von SVG verwendet werden. pstoedit versteht noch einige andere Formate, eine Übersicht finden Sie auf der Seite des Projekts.
    2. Der zweite Parameter ist der Pfad zur Eingabedatei (in unserem Fall eine EPS-Datei).
    3. Der dritte Parameter ist der Pfad zur Ausgabedatei (in unserem Fall eine SVG-Datei).

    Beispiel:

    pstoedit -f plot-svg x.eps x.svg

    Dieser Befehl würde eine EPS-Datei namens x.eps welche im Verzeichnis von pstoedit liegt mittels den plotutils in eine SVG-Datei namens x.svg welche im Verzeichnis von pstoedit angelegt wird, konvertieren.
    Denken Sie daran, dass Sie unter Windows Vista bei diesem Beispiel die Kommandozeile als Administrator geöffnet haben müssen, da die Ausgabedatei ansonsten nicht geschrieben werden kann.

1 Kommentar:

  1. Sollte plot-svg nicht funktionieren, kann man auch mal:

    pstoedit -f svg input.eps output.svg

    versuchen - mit dieser Einstellung werden die GNU plotutils nicht verwendet. Sollten die Farben nicht korrekt konvertiert werden, können diese mit inkscape nachträglich korrigiert werden

    AntwortenLöschen