Verwandlungskünstler

Konvertieren mit Pstoedit

01.12.2005
Postscript-Dateien sind keine Einbahnstraße: Mit Pstoedit konvertieren Sie Postscript- und PDF-Dateien in andere Bildformate, aber auch in Flash-Dateien oder Java-Applets.

Versucht man den Namen des hier vorgestellten Tools Pstoedit [1] ohne Vorkenntnisse zu buchstabieren, bricht man sich die Zunge. Eingeweihte wissen, dass ps für Postscript steht, to im Englischen "zu" bedeutet und edit so viel wie bearbeiten heißt. Nomen est omen: Das kleine Kommandozeilen-Tool wandelt Postscript- und PDF-Dateien in ein editierbares Format um. Hartgesottene wenden jetzt ein, Sie hätten Postscript-Code auch schon ohne Konvertierung editiert – wer das aber bereits absolviert hat, weiß, dass das Ganze nicht sonderlich komfortabel ist.

Installation

Suse 9.3 bringt zwar die vorkompilierte Version 3.33 von Pstoedit mit, für die aktuelle Version 3.42 müssen Sie jedoch zum Kompiler greifen. Da die Änderungen zwischen den Versionen zahlreich sind, scheuen Sie besser nicht den Umweg über den Quellcode [3]. Neben gcc benötigen einige der von Pstoedit unterstützten Ausgabeformate zusätzliche Programme.

Für die Konvertierung von Postscript nach EMF ist die Bibliothek LibEMF [4] notwendig. Unter Suse 9.3 installieren Sie zusätzlich das Paket libEMF-devel, das Sie über Yast oder die RPM-Suchmaschine Pbone [5] finden. Nutzer von Debian Sarge kompilieren die LibEMF selbst. Treten beim Kompilieren Probleme auf, wechseln Sie in das entpackte Unterverzeichnis /libemf, in dem die Dateien libemf.cpp und libemf.h liegen. Spielen Sie über patch < libEMF-1.0.fixes-2002-09-30.diff den auf der LibEMF-Download-Seite erhältlichen Patch [6] ein.

Auf Wunsch bringen Sie Pstoedit zusätzlich mit Graphicsmagick 1.1.6 [7] – einer Weiterentwicklung des bekannten Imagemagick – und mit Ming [8] in Einklang (siehe Kasten "Ming und Graphicmagicks installieren"). Der erste Fall erlaubt das Konvertieren von Postscript in alle durch Graphicsmagick unterstützten Bildformate. Mit Hilfe von Ming generieren Sie aus Postscript-Dateien Flash-Bilder im SWF-Format – allerdings bedarf es dazu der Ming-Bibliothek in der CVS-Version.

Ming und Graphicmagicks installieren

Installieren Sie zunächst via Yast cvs und loggen sich dann über

cvs -d:pserver:anonymous@cvs.↩
sourceforge.net:/cvsroot/ming login

in das Ming-CVS ein. Drücken Sie [Eingabe] bei der Passwortabfrage. Nutzen Sie cvs zum ersten Mal, wiederholen Sie nach der Fehlermeldung die Prozedur. Anschließend geben Sie

cvs -z3 -d:pserver:anonym↩
ous@cvs.sourceforge.net:/cvsro↩
ot/ming co ming

ein. Im aktuellen Verzeichnis entsteht ein Unterverzeichnis mit den neuesten Ming-Dateien. Um nun Ming zu kompilieren, benötigen Sie unter Suse 9.3 neben gcc und gcc-c++ auch giflib-devel, libpng-devel, bison,libjpeg-devel sowie flex. Debian-Benutzer brauchen für ein problemloses Kompilieren die Pakete giflib-bin, libungif4-dev, giflib3g, bison, flex, swig und libpng2-dev. Die Installation erfolgt mittels ./configure && make && make install.

Graphicsmagick besorgen Sie sich in der Version 1.1.6, als Debian-Nutzer benötigen Sie zum Kompilieren zusätzlich die libperl-dev aus dem Etch-Repository. Nun folgt der selbe Dreischritt wie beim Kompilieren von Ming. Vergessen Sie anschließend auch nicht, die plotutils zu installieren, um später auch deren Ausgabeformate [9] verwenden zu können.

Vor der eigentlichen Installation von Pstoedit, laden Sie die entsprechenden Quellen herunter [4]. Nach dem Entpacken des Archivs editieren Sie die darin enthaltene Datei configure und ändern die Zeile:

SPECIAL_CXXFLAGS="-DBUGGYGPP↩
 -pedantic -Wall -Wwrite-strin↩
gs -Wcast-qual -Wpointer-arith "

in

SPECIAL_CXXFLAGS="-DBUGGYGPP↩
 -Wall -Wwrite-strings -Wcast↩
-qual -Wpointer-arith "

Bei aktivierter pedantic-Option weigert sich der Kompiler, Pstoedit mit der Graphicsmagick-Erweiterung zu kompilieren. Nun folgt noch einmal der bekannte, wenn auch leicht ergänzte, Dreischritt aus ./configure --with-libemf-include=/usr/include/libEMF && make && su -c "make install", wobei Sie unter Debian zuvor prüfen sollten, ob der Ordner libEMF tatsächlich unter /usr/include liegt. Mitunter sucht Pstoedit beim Start vergebens die Bibliotheken, geben Sie im Root-Modus ldconfig ein, um die Verknüpfungen zu aktualisieren. Pstoedit selbst finden Sie unter /usr/local/bin auf der Festplatte.

Der Tiger ist los

Ein alter Bekannter aus Artikeln, die etwas mit Postscript zu tun haben, ist der in Abbildung 1 dargestellte Tiger. Die folgenden Beispiel-Konvertierungen nehmen Sie direkt im Verzeichnis /usr/share/ghostscript/8.15/examples/ vor, in dem das Tiger-Bild liegt. Unter Suse 9.3 gibt es den Tiger nicht mehr als reine Postscript-Datei, sondern im EPS-Format – unter Debian müssen Sie eine andere Beispieldatei wählen.

Abbildung 1: Das Bild finden Sie unter Suse 9.3 als /usr/share/ghostscript/8.15/examples/tiger.eps, Debian-Nutzer müssen ein anderes Beispiel wählen.

Das ist kein Problem für Pstoedit. Da das Tool auf Ghostscript basiert, verträgt es als Eingabeformate sowohl PS, EPS als auch PDF. Die Anzahl der verfügbaren Ausgabeformate richtet sich danach, auf welche Module Pstoedit zugreifen kann. Prinzipiell konvertiert das Programm mittels

pstoedit EINGABEDATEI AUS↩
GABEDATEI

Beispielsweise erzeugt unter Suse 9.3 ein pstoedit tiger.eps tiger.emf eine EMF-Version des Tigers. Diese wird dann – wie Abbildung 2 illustriert – in OpenOffice importiert und dort bearbeitet.

Abbildung 2: Zähne gezogen … EPS-Dateien kann man mit OpenOffice nicht verändern, die durch Pstoedit erzeugte EMF-Datei schon.

Im Normalfall erkennt Pstoedit anhand des Dateinamens der Ausgabedatei das zu verwendende Modul. Die Eingabe von pstoedit tiger.eps tiger.fig scheitert allerdings aufgrund zu vieler Alternativen. Statt eines Tigers im Hausformat von Xfig erhalten Sie eine Liste aller vorhandenen Module inklusive der Dateiformate, die sie erzeugen. Den in Abbildung 3 dargestellten Tiger im Xfig-Format erhält man via

pstoedit -f plot-fig↩
 tiger.eps tiger.fig

Der Parameter -f hilft Pstoedit bei der korrekten Modulauswahl.

Abbildung 3: Xfig ist einer der Klassiker vektororientierter Editoren unter Unix und Linux. Mit Pstoedit verwandelt man PS, EPS oder PDF-Dateien in FIG-Dateien.

Mit dem reinen Konvertieren gelangt Pstoedit noch nicht an das Ende seiner Fähigkeiten. Eine Vielzahl von Parametern verändern beim Konvertieren gleich noch das Ausgangsbild ein wenig – mit pstoedit --help erhalten Sie eine vollständige Liste. Mit der Option -xscale .5 halbieren Sie die Breite des Bildes, mit -yscale 2 verdoppeln Sie dessen Höhe. Postscript-Dateien bestehen oft aus mehreren Seiten: Der Parameter -split zerlegt diese in Einzelseiten. Auch die einzelnen Module bieten noch einige Optionen: Verwendet man zum Erzeugen von Xfig-Bildern nicht das Modul plot-fig sondern fig, stellt der Parameter -metric die verwendete Maßeinheit auf Zentimeter (Standard sind Inches) um.

Interessanterweise generieren Sie mit Pstoedit aus Postscript-Dateien auch Programme. Ein pstoedit tiger.eps tiger.tk erzeugt das in Abbildung 4 dargestellte Tk-Applet, das Sie einfach durch sh tiger.tk starten. Wer keine Skriptsprachen mag, sollte die Module java1 und java2 etwas genauer betrachten – mit ihnen wird Java-Code erzeugt. Alternativ wählen Sie als Ausgabedatei tiger.swf und erhalten ein Flash-Bild (Abbildung 5).

Abbildung 4: Der Tiger als Tk-Programm. Pstoedit wandelt Postscript nicht nur in andere Bildformate, sondern sogar in Tk-Applets um.
Abbildung 5: Direkt aus der druckeroptimierten Postscript-Datei ins Internet: Pstoedit wandelt auch Dateien im EPS-Format in Flash-Bilder um.

Die Zusammenarbeit mit der Graphicsmagick-Erweiterung funktioniert noch nicht fehlerfrei. So interpretiert das Modul den Tiger als Datei mit zwei Seiten. Um daraus dennoch ein Pixelbild (z.B. im JPG-Format) zu machen, verwenden Sie pstoedit -f magick tiger.eps tiger%d.jpg. Die sich daraufhin öffnenden Fenster schließen Sie getrost und erhalten zwei Dateien tiger1.jpg und tiger2.jpg. Die erste Datei zeigt die Miezekatze, die zwei bleibt leer.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Related content

  • Wandlungsfähig
    Postscript-Dateien tauchen meist am Ende der Dokumentenerzeugung auf und werden nur selten nachbearbeitet. Mit Pstoedit konvertieren Sie sie in andere, editierbare, Dateiformate.
Kommentare

Infos zur Publikation

title_2014_08

Digitale Ausgabe: Preis € 5,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...
o2 surfstick software für ubuntu?
daniel soltek, 15.07.2014 18:27, 1 Antworten
hallo zusammen, habe mir einen o2 surfstick huawei bestellt und gerade festgestellt, das der nic...
Öhm - wozu Benutzername, wenn man dann hier mit Klarnamen angezeigt wird?
Thomas Kallay, 03.07.2014 20:30, 1 Antworten
Hallo Team von Linux-Community, kleine Zwischenfrage: warum muß man beim Registrieren einen Us...
openSUSE 13.1 - Login-Problem wg. Fehler im Intel-Grafiktreiber?
Thomas Kallay, 03.07.2014 20:26, 8 Antworten
Hallo Linux-Community, habe hier ein sogenanntes Hybrid-Notebook laufen, mit einer Intel-HD460...
Fernwartung für Linux?
Alfred Böllmann, 20.06.2014 15:30, 7 Antworten
Hi liebe Linux-Freunde, bin beim klassischen Probleme googeln auf www.expertiger.de gestoßen, ei...