Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

epstopdf und das CMYK Farbschema

94 views
Skip to first unread message

Markus Mergner

unread,
Jul 29, 2003, 2:10:00 PM7/29/03
to
Hallo,

ich bin bei meiner Arbeit mit LaTeX und insbesondere dem Werkzeug
'epstopdf' auf folgendes gestossen:

Beim Umwandeln einer EPS Grafik mit CMYK Grafiken von EPS nach PDF
ändern sich die Farben... Das liegt daran, dass 'epstopdf' beim
Konvertieren mit Ghostscript die Option -dProcessColorModel auf dem
Standardwert /DeviceRGB lässt, d.h. alle Grafiken, egal welchem
Farbmodell sie unterliegen, werden nach RGB umgewandelt. Zwar ist der
RGB Farbraum größer als der von CMYK, aber eben nicht genauso granular.
Will sagen: für manche CMYK Farben gibt es keine (ganz genaue) RGB
Entsprechung. Damit das nicht passiert, muss man beim Konvertieren von
Postscriptdateien in PDF Dateien mit Ghostscript die Option
-dProcessColorModel=/DeviceCMYK setzen.

Da nun aber das Perlskript 'epstopdf' keine zusätzlichen Optionen an
Ghostscript weiterreicht, habe ich das Skript um eine Option '--cmyk'
erweitert, was zwischen CMYK und RGB umschaltet.

Nun habe ich aber auf meinem Rechner (warum auch immer) ein leicht
anderes 'epstopdf' als im CTAN gefunden, deshalb lege ich das Skript
hier vollständig bei, damit es keine Probleme beim Patchen gibt.

Grüße Markus

eps2pdf

Markus Mergner

unread,
Jul 29, 2003, 2:33:18 PM7/29/03
to
Markus Mergner wrote:

> Nun habe ich aber auf meinem Rechner (warum auch immer) ein leicht
> anderes 'epstopdf' als im CTAN gefunden, deshalb lege ich das Skript
> hier vollständig bei, damit es keine Probleme beim Patchen gibt.

Es gibt ein Latex Paket mit dem Namen 'epstopdf' (liegt bei meiner teTeX
Distribution unter
'/usr/share/texmf/tex/latex/oberdiek/epstopdf.sty') Das erzeugt mit
Hilfe von 'epstopdf' automatisch bei der Verwendung mit pdflatex aus
allen EPS Grafiken, die eingebaut sind, passende PDF Grafiken. Man muss
also nicht mehr von Hand jede Datei nach PDF konvertieren, sondern das
Programm erledigt das von allein. Einzige Bedingung ist allerdings, das
die EPS Dateien ohne Endung (also: \includegraphics{epsfile} und *nicht*
\includegraphics{epsfile.eps}) eingebunden werden und pdflatex mit der
Option '--shell-escape' aufgerufen wurde. (siehe Dokumentation des Pakets).

Damit das klappt, muss die Datei aus dem vorigen Post in 'epstopdf'
umbenannt werden und das hier angehängte (veränderte) Style verwendet
werden.

Dort habe ich gegenüber der ursprünglichen Version von 'epstopdf.sty'
zwei Optionen ('rgb' und 'cmyk') hinzugefügt die den Farbraum bei der
automatischen Konvertierung auswählen, Standard ist RGB.

Die EPS Grafiken werden also durch die Zeile

\usepackage[cmyk]{epstopdf}

in CMYK - PDF - Grafiken umgewandelt und mit der Zeile

\usepackage[rgb]{epstopdf}

oder

\usepackage{epstopdf}

werden die EPS Grafiken in RGB - PDF - Dateien verwandelt.

Grüße Markus

epstopdf.sty

Heiko Oberdiek

unread,
Jul 29, 2003, 2:43:17 PM7/29/03
to
Markus Mergner <mar...@nospam.mmergner.de> wrote:

> Damit das nicht passiert, muss man beim Konvertieren von
> Postscriptdateien in PDF Dateien mit Ghostscript die Option
> -dProcessColorModel=/DeviceCMYK setzen.
>
> Da nun aber das Perlskript 'epstopdf' keine zusätzlichen Optionen an

Ist nicht noetig, da ghostscript die Umgebungsvariable GS_OPTIONS
auf Optionen untersucht:

$ GS_OPTIONS='-dProcessColorModel=/DeviceCMYK' epstopdf ...

> Ghostscript weiterreicht, habe ich das Skript um eine Option '--cmyk'
> erweitert, was zwischen CMYK und RGB umschaltet.

Dann waere eine Option sinnvoller, die einfach den Inhalt unangetastet
an Ghostscript weiterreicht, als fuer jede moegliche
Ghostscript-Option eine neue epstopdf-Option zu schaffen.

Viele Gruesse
Heiko <ober...@uni-freiburg.de>

Heiko Oberdiek

unread,
Jul 29, 2003, 2:43:17 PM7/29/03
to
Markus Mergner <mar...@nospam.mmergner.de> wrote:

> Markus Mergner wrote:
>
> > Nun habe ich aber auf meinem Rechner (warum auch immer) ein leicht
> > anderes 'epstopdf' als im CTAN gefunden, deshalb lege ich das Skript
> > hier vollständig bei, damit es keine Probleme beim Patchen gibt.
>
> Es gibt ein Latex Paket mit dem Namen 'epstopdf' (liegt bei meiner teTeX
> Distribution unter
> '/usr/share/texmf/tex/latex/oberdiek/epstopdf.sty') Das erzeugt mit
> Hilfe von 'epstopdf' automatisch bei der Verwendung mit pdflatex aus
> allen EPS Grafiken, die eingebaut sind, passende PDF Grafiken. Man muss
> also nicht mehr von Hand jede Datei nach PDF konvertieren, sondern das
> Programm erledigt das von allein. Einzige Bedingung ist allerdings, das
> die EPS Dateien ohne Endung (also: \includegraphics{epsfile} und *nicht*
> \includegraphics{epsfile.eps}) eingebunden werden und pdflatex mit der
> Option '--shell-escape' aufgerufen wurde. (siehe Dokumentation des Pakets).
>
> Damit das klappt, muss die Datei aus dem vorigen Post in 'epstopdf'
> umbenannt werden und das hier angehängte (veränderte) Style verwendet
> werden.
>
> Dort habe ich gegenüber der ursprünglichen Version von 'epstopdf.sty'
> zwei Optionen ('rgb' und 'cmyk') hinzugefügt die den Farbraum bei der
> automatischen Konvertierung auswählen, Standard ist RGB.

Das verbietet die LPPL! "epstopdf.sty" darf nicht veraendert werden!

Ausserdem ist das nicht noetig, das Paket definiert das wesentliche,
die Unterstuetzung der `-Syntax fuer Konvertierungsprogramme.
Nun kann man klassisch wie fuer dvips mit \DeclareGraphicsRule
seine eigenen Regeln mit Konvertierungsprogrammen definieren
oder die Regel mit epstopdf ueberschreiben.

Uebrigens gibt es bei neueren Ghostscript-Versionen eine Alternative
zu epstopdf:
ps2pdf -dEPSCrop ...

Viele Gruesse
Heiko <ober...@uni-freiburg.de>

Markus Mergner

unread,
Jul 29, 2003, 9:54:42 PM7/29/03
to
Heiko Oberdiek wrote:
> Markus Mergner <mar...@nospam.mmergner.de> wrote:
>>[...]

> Ist nicht noetig, da ghostscript die Umgebungsvariable GS_OPTIONS
> auf Optionen untersucht:
>
> $ GS_OPTIONS='-dProcessColorModel=/DeviceCMYK' epstopdf ...

Was ich wollte war, eine *einfache* Möglichkeit zu schaffen, zwischen
den beiden Farbmodellen bei der Konvertierung umzuschalten. Da verbietet
sich das Setzen einer kryptischen Kommandozeilenoption von allein.

>>Ghostscript weiterreicht, habe ich das Skript um eine Option '--cmyk'
>>erweitert, was zwischen CMYK und RGB umschaltet.
>
>
> Dann waere eine Option sinnvoller, die einfach den Inhalt unangetastet
> an Ghostscript weiterreicht, als fuer jede moegliche
> Ghostscript-Option eine neue epstopdf-Option zu schaffen.

Das ist wohl wahr. Dann wäre es aber auch mit einem gewissen Aufwand
verbunden, herauszufinden, welche der GS Optionen nun dafür
verantwortlich ist und welche nicht. Immerhin besteht epstopdf bereits
aus einer Sammlung handverlesener GS Optionen, warum dann nicht einfach
noch eine hinzufügen?

Sicherlich hätte man es so machen können, das alles jetzigen und
zukünftigen Bedürfnisse erfüllt werden, aber ich habe das Problem
bemerkt, (für mich befriedigend) gelöst und kann nun mit LaTeX
weiterarbeiten. Ich habe mir nur gedacht, dass es womöglich noch mehr
Leute mit einem ähnlichem Problem (aus blassblau wird quietschblau usw.)
gibt, deshalb habe ich es gepostet.

Grüsse Markus

Markus Mergner

unread,
Jul 29, 2003, 10:06:54 PM7/29/03
to
Hallo,

Heiko Oberdiek wrote:
>>[...]

>
> Das verbietet die LPPL! "epstopdf.sty" darf nicht veraendert werden!

Das wusste ich nicht. Aber man kann ja auch nicht zwei duzend Lizenzen
im Kopf haben... Meine Überlegung war etwas vorhandenes zu erweitern um
nicht ein neues .sty zu schaffen was nur einen ganz minimalen Mehrwert
bietet. Um keinem auf den Schlips zu treten habe ich auch das
Standartverhalten beibehalten. Ich ziehe also mein voriges Posting
zurück und blicke betreten zu Boden. :-(

> Ausserdem ist das nicht noetig, das Paket definiert das wesentliche,
> die Unterstuetzung der `-Syntax fuer Konvertierungsprogramme.
> Nun kann man klassisch wie fuer dvips mit \DeclareGraphicsRule
> seine eigenen Regeln mit Konvertierungsprogrammen definieren
> oder die Regel mit epstopdf ueberschreiben.

Da kann ich Dir nur zustimmen. Bisher ist es jedoch nur mit ziemlichen
Klimmzügen möglich EPS Dateien an der Bounding Box auszuschneiden und in
ein PDF zu konvertieren, daher auch meine Bastelei an epstopdf. Man muss
ja nicht das Rad neu erfinden um eine kleine Zusatzleistung zu bekommen.

> Uebrigens gibt es bei neueren Ghostscript-Versionen eine Alternative
> zu epstopdf:
> ps2pdf -dEPSCrop ...

das hört sich nett an, ab welcher Version ist es denn in GNU Ghostscript
einthalten (das -dEPSCrop) ?

Grüße Markus

Christian Koch

unread,
Jul 30, 2003, 1:09:21 AM7/30/03
to
Markus Mergner <mar...@nospam.mmergner.de> schrieb:

> Heiko Oberdiek wrote:
> > Uebrigens gibt es bei neueren Ghostscript-Versionen eine
> > Alternative zu epstopdf:
> > ps2pdf -dEPSCrop ...
>
> das hört sich nett an, ab welcher Version ist es denn in GNU
> Ghostscript einthalten (das -dEPSCrop) ?

Siehe hier:
http://groups.google.de/groups?selm=bccfvh%24hfj0e%241%40ID-44350.news.dfncis.de

Christian.

Heiko Oberdiek

unread,
Jul 30, 2003, 6:17:31 AM7/30/03
to
Markus Mergner <mar...@nospam.mmergner.de> wrote:

> Heiko Oberdiek wrote:
> > Markus Mergner <mar...@nospam.mmergner.de> wrote:
> >>[...]
> > Ist nicht noetig, da ghostscript die Umgebungsvariable GS_OPTIONS
> > auf Optionen untersucht:
> >
> > $ GS_OPTIONS='-dProcessColorModel=/DeviceCMYK' epstopdf ...
>
> Was ich wollte war, eine *einfache* Möglichkeit zu schaffen, zwischen
> den beiden Farbmodellen bei der Konvertierung umzuschalten. Da verbietet
> sich das Setzen einer kryptischen Kommandozeilenoption von allein.

Ich habe lediglich die Technik erklaert. Es steht dir frei, dir alle
Optionen, die in Ps2pdf.htm von ghostscript erklaert sind, anzuschauen
und dir ein GUI dazu oder was auch immer zu basteln.

> > Dann waere eine Option sinnvoller, die einfach den Inhalt unangetastet
> > an Ghostscript weiterreicht, als fuer jede moegliche
> > Ghostscript-Option eine neue epstopdf-Option zu schaffen.
>
> Das ist wohl wahr. Dann wäre es aber auch mit einem gewissen Aufwand
> verbunden, herauszufinden, welche der GS Optionen nun dafür
> verantwortlich ist und welche nicht.

Das oben zitierte zu schreibende GUI koennte dann fuer jede
Einstellung einen Hilfetext bieten, das die Wirkung der Option
fuer den Benutzer verstaendlich erklaert.

> Immerhin besteht epstopdf bereits
> aus einer Sammlung handverlesener GS Optionen, warum dann nicht einfach
> noch eine hinzufügen?

Weil es nicht bei einer bleibt. Google mal, im letzten Herbst oder so
gab es mal eine laengere Diskussion. Siehe auch "Ps2pdf.htm".
Das kleinste gemeinsame Vielfache waeren dann mindestens
fuenfzig neue Optionen.

Viele Gruesse
Heiko <ober...@uni-freiburg.de>

0 new messages