Konvertierung nach *.eps

Wahl des Ausgangsformats

Im Prinzip läßt sich praktisch jedes Bildformat mit convert (steht nach einem module add imagemagick zur Verfügung) oder xv nach *.eps konvertieren, die resultierenden *.eps oder *.ps Dateien können aber, bei falscher Wahl des Ausgangs-Formates und der Konvertierungs-Routine, schnell bis auf das 100-fache des benötigten Platzes anwachsen (d.h. 10000%!!). Generell gilt:
Selbsterstellte Zeichnungen (Vektoren):
Diese sollte man aus der Anwendung heraus (z.B. xfig) direkt nach *.eps konvertieren. Unter Windows ist dies eventuell nicht so einfach, siehe dort.
Eingescannte Zeichnungen (Bitmaps):
Als Bildformate eignen sich hier insbesondere *.png, *.tiff oder *.gif. Leider können aufgrund des unseligen Unisys-Patentes immer weniger Unix-Tools etwas mit LZW-komprimierten Dateien anfangen, im Moment erzeugen *.gif und *.tiff aber immer noch die kleinsten PostScript Dateien. Leider funktioniert die Konvertierung von *.png nach *.eps nicht immer, so daß ich im Moment noch zur Verwendung von *.tiff (oder *.gif) raten muß.
Photos (Bitmaps):
Als Bildformat eignet sich hier insbesondere *.jpeg; *.gif erzeugt trotz der Reduktion auf maximal 256 Farben bereits wesentlich größere Dateien.

Unix

Unter Unix sollten die folgenden Tools eingesetzt werden, um die oben genannten Formate nach *.eps zu konvertieren:
*.gif:
module add gifconv
gifconv xxx.gif xxx.eps
*.tif:
module add libtiff
tiff2ps -2 -e xxx.tif > xxx.eps
*.png:
module add bmeps
bmeps xxx.png xxx.eps

Leider funktioniert bmeps nicht mit allen *.png-Dateien, so daß ich im Moment noch zur Verwendung von *.tiff (oder *.gif) raten muß.
*.jpg:
module add jpeg2ps
jpeg2ps xxx.jpg > xxx.eps
*.jpg (progressive):
module add jpeg2ps
module add libjpeg
jpegtran -optimize xxx.jpg > /tmp/xxx.jpg
jpeg2ps /tmp/xxx.jpg > xxx.eps
*.jpg (Grauwert):
module add jpeg2ps
module add libjpeg
jpegtran -grayscale xxx.jpg > /tmp/xxx.jpg
jpeg2ps /tmp/xxx.jpg > xxx.eps

Windows

To be completed.

Mac

To be completed.

Fallbeispiel

Am Beispiel eines Computergenerierten Bildes (Equivalent zu Fall 2, gescanntes Bild) soll das Einspar-potential deutlich gemacht werden:

Format Größe in Byte Einsparung in %
*.gif 7061  
*.eps (xv) 267193 0.0%
*.eps (ImageMagick) 34992 86.9%
*.eps (xv compressed) 30959 88.4%
*.eps (gifconv) 17308 93.5%

Alternativ kann man die Datei auch erst nach *.jpeg konvertieren (Achtung: Qualitätsverlust!) und dann nach PostScript wandeln:

Format Größe in Byte Einsparung in %
*.jpg 7401  
*.eps (xv) 267193 0.0%
*.eps (ImageMagick) 211035 21.0%
*.eps (jpeg2ps) 10261 96.2%

Alles in allem liegen die Einsparungen für dieses konkrete Beispiel also zwischen 93.5% und 96.2%, auf andere Zeichnungen sollte sich das entsprechend anwenden lassen.

On-the-fly Konvertierung in LaTeX

Schließlich gibt es natürlich auch noch die Möglichkeit, bitmaps gar nicht explizit nach eps zu konvertieren, sondern diese Arbeit automatisch durch dvips erledigen zu lassen. Diese Möglichkeit verbraucht am wenigsten Speicherplatz, hat aber den Nachteil, im xdvi keine Bitmaps mehr anzuzeigen - Details auf Nachfrage.

[Valid HTML 4.0!] [Bobby Approved (v 3.1)]

Sven Utcke
last modified: 4-May-2001