Discussion:
PS zu EPS via Ghostview für Einbettung von Noten (MusiXTeX)
(zu alt für eine Antwort)
Sebastian Berndt
2009-03-20 15:39:55 UTC
Permalink
Moin,

ich versuch einige kleinere Notenbeispiele in meine Dissertation
einzufügen. Diese erzeuge ich mittels PMX und MusiXTeX. Das Tutorial
zu PMX für Anfänger (wie mich) "Typesetting music with PMX" von
Cornelius Noak (pmxccn.pdf) heißt es unter "C.4 PMX and LaTeX", die
beste Lösung für mein Vorhaben sei, erst mit PMX -- MusiXTeX -- dvips
eine PS-Datei zu erzeugen und diese dann in eine EPS-Datei zu
konvertieren, z.B. mit ghostview.

Nun warnt mich aber ghostview, daß das bei einigen Befehlen, unter
anderem initmatrix, zu Fehlern bei der Einbettung in andere Programme
kommen könnte und Dateien, die solche Befehle enthalten keinesfalls
mit "PS zu EPS" konvertiert werden sollten:

"Wird der Befehl PS zu EPS nicht richtig angewendet, kann es sein, daß
PostScript-Dateien mit falschen DSC-Kommentaren erzeugt werden und daß
Probleme beim Einbetten in ein anderes Dokument auftreten."

Meine Musikbeispiele enthalten unter anderem initmatrix (und eine
ganze Reihe andere Befehle, bei denen "Datei --> Meldungen": "EPS file
must not use ...", auswirft). Wenn ich dennoch nach eps konvertiere
und das dann in meine Diss einbaue, klappt es trotzdem.

Da ghostview nicht sehr spezifisch ist, was die Problembeschreibung
angeht, aber sehr strikt "mach's ja nicht" sagt, und ich grundsätzlich
keine Ahnung habe, was da für Probleme auftreten könnten, stellt sich
mir die Frage: Würde das Problem, vor dem ghostview warnt, bereits die
Einbettung selbst verhindern, oder könnten sich noch andere Fehler
einschleichen, die nicht auf den ersten Blick, sondern erst später
auffallen? Also kann ich das einfach so machen (Noak schreibt, das
Tutorial hätte er auf diesem Wege erstellt) oder muß ich aufpassen,
und wenn ja, auf was?

Grüßle

Seb.
Rolf Niepraschk
2009-03-20 16:12:49 UTC
Permalink
Sebastian Berndt schrieb:
...
Post by Sebastian Berndt
Meine Musikbeispiele enthalten unter anderem initmatrix (und eine
ganze Reihe andere Befehle, bei denen "Datei --> Meldungen": "EPS file
must not use ...", auswirft). Wenn ich dennoch nach eps konvertiere
und das dann in meine Diss einbaue, klappt es trotzdem.
Wenn's klappt, ist es gut.

Im Übrigen empfehle ich einen anderen Weg:

1. PS --> PDF ("ps2pdf")
2. PDF --> EPS ("pdftops -eps")

Dieses Verfahren ist robuster.

...Rolf
Heiko Bauke
2009-03-20 16:46:21 UTC
Permalink
Hi,

On Fri, 20 Mar 2009 17:12:49 +0100
Post by Rolf Niepraschk
1. PS --> PDF ("ps2pdf")
2. PDF --> EPS ("pdftops -eps")
Dieses Verfahren ist robuster.
was spricht gegen »dvips -E ...«?


Heiko
--
-- Kein Kleidungsstück ist so stark modischen Einflüßen
-- unterworfen wie ein Deckmantel. (Rupert Schützbach)
-- Cluster Computing @ http://www.clustercomputing.de
Rolf Niepraschk
2009-03-20 23:59:47 UTC
Permalink
Heiko Bauke schrieb:
...
Post by Heiko Bauke
was spricht gegen »dvips -E ...«?
Dagegen spricht, dass es nicht funktioniert.

...Rolf
Sebastian Berndt
2009-03-21 09:41:14 UTC
Permalink
Post by Rolf Niepraschk
...
Post by Heiko Bauke
was spricht gegen »dvips -E ...«?
Dagegen spricht, dass es nicht funktioniert.
Und ich dachte schon, es läge an mir bzw. meinem Rechner...

Grüßle

Seb.
Rolf Niepraschk
2009-03-21 11:22:12 UTC
Permalink
Rolf Niepraschk schrieb:
...
Post by Rolf Niepraschk
1. PS --> PDF ("ps2pdf")
2. PDF --> EPS ("pdftops -eps")
Noch eine Ergänzung: Wenn die Grafik im PS-Format ungünstigen weißen
Rand aufweist, sollte man die PDF-Datei noch mit dem Programm "pdfcrop"
bearbeiten bevor wieder nach EPS gewandelt wird.

...Rolf
Dr Engelbert Buxbaum
2009-03-23 12:41:43 UTC
Permalink
Post by Rolf Niepraschk
1. PS --> PDF ("ps2pdf")
2. PDF --> EPS ("pdftops -eps")
Dieses Verfahren ist robuster.
Soweit die Professional Version von Akrobat vorhanden ist (wird an einer
Uni wohl jemand haben, ggf. mal beim Rechenzentrum nachfragen), kann man
auch damit ps oder eps einlesen, bearbeiten (etwa beschneiden) und dann
als pdf speichern. Diese Dateien lassen sich direkt in LaTeX verwenden
(als Graphiken), entweder mit dvipdfm als dvi-Treiber oder, noch robuster,
mit pdfLaTeX. Letzteres ist der Weg den ich bei meinen Dokumenten gehe.

Der (e)ps Import von Acrobat ist sehr gut, er funktioniert sogar mit
Dateien die bei GhostView kryptische Fehlermeldungen und Absturz
verursachen.
Sebastian Berndt
2009-03-24 09:35:58 UTC
Permalink
Post by Dr Engelbert Buxbaum
Soweit die Professional Version von Akrobat vorhanden ist (wird an einer
Uni wohl jemand haben, ggf. mal beim Rechenzentrum nachfragen), kann man
auch damit ps oder eps einlesen, bearbeiten (etwa beschneiden) und dann
als pdf speichern. Diese Dateien lassen sich direkt in LaTeX verwenden
(als Graphiken), entweder mit dvipdfm als dvi-Treiber oder, noch robuster,
mit pdfLaTeX. Letzteres ist der Weg den ich bei meinen Dokumenten gehe.
Wie läuft denn dann das Einbinden bei pdfLaTeX? Bis jetzt hat bei mir
noch jeder Dateityp irgendeinen mehr oder weniger kryptischen Fehler
ausgeworfen. Muß ich das mit einem anderne Paket als "graphicx"
machen?

Grüßle

Seb., der im Augenblick schon froh ist, inzwischen ansatzweise mit
MusiXTeX klar zu kommen :-)
Herbert Voss
2009-03-24 10:15:04 UTC
Permalink
Post by Sebastian Berndt
Seb., der im Augenblick schon froh ist, inzwischen ansatzweise mit
MusiXTeX klar zu kommen :-)
alle Beispiele aus dem Graphics Companion sind mit
dvips -E
\epstool --bbox --copy datei.eps datei.tmp
mv datei.tmp datei.eps

problemlos erstellt worden. Die anschließende Konvertierung nach
pdf erfolgte sowohl mit ps2pdf als uch dem Distiller.

Herbert
Christoph Bersch
2009-03-24 11:08:33 UTC
Permalink
Post by Herbert Voss
Post by Sebastian Berndt
Seb., der im Augenblick schon froh ist, inzwischen ansatzweise mit
MusiXTeX klar zu kommen :-)
alle Beispiele aus dem Graphics Companion sind mit
dvips -E
\epstool --bbox --copy datei.eps datei.tmp
mv datei.tmp datei.eps
problemlos erstellt worden.
So habe ich meine EPS Bilder bisher auch erzeugt. Doch mit dem GPL
Ghostscript 8.62, welches inzwischen das einzige Ghostscript ist, das
bei dem aktuellen Debian mitgeliefert wird, funktioniert das nicht mehr.
Die Bounding Box kann mit 'epstool' nicht mehr korrekt bestimmt werden.

Ich nehme jetzt folgenden Ablauf:

latex datei.tex
dvips datei.dvi
ps2eps -B datei.ps

Damit stimmt die Bounding Box wieder.

Christoph
Herbert Voss
2009-03-24 11:43:36 UTC
Permalink
Post by Christoph Bersch
So habe ich meine EPS Bilder bisher auch erzeugt. Doch mit dem GPL
Ghostscript 8.62, welches inzwischen das einzige Ghostscript ist, das
bei dem aktuellen Debian mitgeliefert wird, funktioniert das nicht mehr.
Die Bounding Box kann mit 'epstool' nicht mehr korrekt bestimmt werden.
habe kein Problem damit:

***@shania:~/Documents> epstool --bbox --copy testD.tmp testD.eps
"gs" -dNOPAUSE -dBATCH -sDEVICE=bbox -c "<</PageSize [9400 9400]
/PageOffset [3000 3000]>> setpagedevice" -f "/tmp/gsviewjd52yA"
GPL Ghostscript 8.62 (2008-02-29)
Copyright (C) 2008 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Loading StandardSymL font from
/usr/local/share/ghostscript/fonts/s050000l.pfb... 3872056 1901650
6239448 4053839 4 done.
Loading NimbusRomNo9L-Regu font from
/usr/local/share/ghostscript/fonts/n021003l.pfb... 3913272 2076521
6239448 4055031 4 done.
%%BoundingBox: 3062 3207 3475 3668
%%HiResBoundingBox: 3062.447907 3207.131902 3474.361511 3667.008474
OK


Herbert
Christoph Bersch
2009-03-24 12:00:59 UTC
Permalink
Post by Herbert Voss
Post by Christoph Bersch
So habe ich meine EPS Bilder bisher auch erzeugt. Doch mit dem GPL
Ghostscript 8.62, welches inzwischen das einzige Ghostscript ist, das
bei dem aktuellen Debian mitgeliefert wird, funktioniert das nicht mehr.
Die Bounding Box kann mit 'epstool' nicht mehr korrekt bestimmt werden.
"gs" -dNOPAUSE -dBATCH -sDEVICE=bbox -c "<</PageSize [9400 9400]
/PageOffset [3000 3000]>> setpagedevice" -f "/tmp/gsviewjd52yA"
GPL Ghostscript 8.62 (2008-02-29)
Copyright (C) 2008 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
Loading StandardSymL font from
/usr/local/share/ghostscript/fonts/s050000l.pfb... 3872056 1901650
6239448 4053839 4 done.
Loading NimbusRomNo9L-Regu font from
/usr/local/share/ghostscript/fonts/n021003l.pfb... 3913272 2076521
6239448 4055031 4 done.
%%BoundingBox: 3062 3207 3475 3668
%%HiResBoundingBox: 3062.447907 3207.131902 3474.361511 3667.008474
OK
Wenn ich das folgende Testdokument kompiliere (TeXLive 2008) ist die
BoundingBox sogar Null:

\documentclass{scrartcl}
\usepackage{pstricks}
\usepackage{pst-eps}
\begin{document}
\begin{TeXtoEPS}
\begin{pspicture}(5,5)
\psframe(0,0)(3,3)
\end{pspicture}
\end{TeXtoEPS}
\end{document}

latex bbox.tex
dvips -E bbox.dvi -o tmp.eps
epstool --copy --bbox --output bbox.eps tmp.eps

epstool --bbox --copy --output bbox.eps tmp.eps
"gs" -dNOPAUSE -dBATCH -sDEVICE=bbox -c "<</PageSize [9400 9400]
/PageOffset [3000 3000]>> setpagedevice" -f "/tmp/gsviewOUH3ve"
GPL Ghostscript 8.62 (2008-02-29)
Copyright (C) 2008 Artifex Software, Inc. All rights reserved.
This software comes with NO WARRANTY: see the file PUBLIC for details.
%%BoundingBox: 0 0 0 0
%%HiResBoundingBox: 0.000000 0.000000 0.000000 0.000000
OK


$ epstool --version
epstool 3.08 2005-06-06

Christoph
Rolf Niepraschk
2009-03-24 12:15:16 UTC
Permalink
Post by Christoph Bersch
So habe ich meine EPS Bilder bisher auch erzeugt. Doch mit dem GPL
Ghostscript 8.62, welches inzwischen das einzige Ghostscript ist, das
bei dem aktuellen Debian mitgeliefert wird, funktioniert das nicht mehr.
Die Bounding Box kann mit 'epstool' nicht mehr korrekt bestimmt werden.
Ich kann den Effekt bestätigen. "pdfcrop" meldet in einem ähnlichen Fall

!!! Warning: Empty Bounding Box is returned by Ghostscript!
!!! Page 1: 0 0 0 0
!!! Either there is a problem with the page or with Ghostscript.

???

...Rolf
Herbert Voss
2009-03-24 12:57:14 UTC
Permalink
Post by Christoph Bersch
Wenn ich das folgende Testdokument kompiliere (TeXLive 2008) ist die
bei mir nicht!
Post by Christoph Bersch
latex bbox.tex
dvips -E bbox.dvi -o tmp.eps
liefert schon eine korrekte bb, was auch wegen TeXtoEPS
so sein sollte
Post by Christoph Bersch
epstool --copy --bbox --output bbox.eps tmp.eps
liefert dann bei nur in dem Sinne eine falsche bb, als dass der
weiße Rand jetzt abgeschnitten ist. Ansonsten alles bestens!

This is dvips(k) 5.97 Copyright 2008 Radical Eye Software

epstool 3.08 2005-06-06

Herbert
Christoph Bersch
2009-03-24 14:56:50 UTC
Permalink
Post by Herbert Voss
Post by Christoph Bersch
Wenn ich das folgende Testdokument kompiliere (TeXLive 2008) ist die
bei mir nicht!
Post by Christoph Bersch
latex bbox.tex
dvips -E bbox.dvi -o tmp.eps
liefert schon eine korrekte bb, was auch wegen TeXtoEPS
so sein sollte
Bei mir hat das mit TeXtoEPS und 'dvips -E' noch nie so richtig
funktioniert, daher bin ich dann zu 'epstool' gekommen.
Bei dem vorhin angegebenen Beispiel mit dem \psframe ist die BoundingBox
größer als die gezeichnete Box (so groß wie die pspicture Umgebung). Das
macht durchaus Sinn.
Wenn ich aber folgendes Dokument nehme:

\documentclass{scrartcl}
\usepackage{pstricks}
\usepackage{pst-eps}
\begin{document}
\begin{TeXtoEPS}
\begin{pspicture}[showgrid=true](5,5)

\end{pspicture}
\end{TeXtoEPS}
\end{document}

dann funktioniert es schon nicht mehr. Die Zahlen an den Gitterlinien
liegen außerhalb der Bounding Box.

$ dvips -v
This is dvips(k) 5.97 Copyright 2008 Radical Eye Software
(www.radicaleye.com)


Christoph
Herbert Voss
2009-03-24 15:58:55 UTC
Permalink
Post by Christoph Bersch
Post by Herbert Voss
Post by Christoph Bersch
Wenn ich das folgende Testdokument kompiliere (TeXLive 2008) ist die
bei mir nicht!
Post by Christoph Bersch
latex bbox.tex
dvips -E bbox.dvi -o tmp.eps
liefert schon eine korrekte bb, was auch wegen TeXtoEPS
so sein sollte
Bei mir hat das mit TeXtoEPS und 'dvips -E' noch nie so richtig
funktioniert, daher bin ich dann zu 'epstool' gekommen.
Bei dem vorhin angegebenen Beispiel mit dem \psframe ist die BoundingBox
größer als die gezeichnete Box (so groß wie die pspicture Umgebung). Das
macht durchaus Sinn.
dann funktioniert es schon nicht mehr. Die Zahlen an den Gitterlinien
liegen außerhalb der Bounding Box.
natürluch funktioniert das!
durch dvips fehlt die Beschriftung, weil TeXtoEPS nur die
pspicture-Maße nimmt. Nach epstool-Anwendung ist dagegen
alles bestens.

Herbert
Herbert Voss
2009-03-24 17:36:59 UTC
Permalink
Post by Christoph Bersch
\documentclass{scrartcl}
\usepackage{pstricks}
\usepackage{pst-eps}
\begin{document}
\begin{TeXtoEPS}
\begin{pspicture}[showgrid=true](5,5)
\end{pspicture}
\end{TeXtoEPS}
\end{document}
dann funktioniert es schon nicht mehr. Die Zahlen an den Gitterlinien
liegen außerhalb der Bounding Box.
\begin{pspicture}[showgrid=true](-0.3,-0.4)(5.1,5.4)

so ist es übrigens schon mit dvips -E in Ordnung

Herbert
Sebastian Berndt
2009-04-27 13:27:01 UTC
Permalink
Post by Herbert Voss
Post by Sebastian Berndt
Seb., der im Augenblick schon froh ist, inzwischen ansatzweise mit
MusiXTeX klar zu kommen :-)
alle Beispiele aus dem Graphics Companion sind mit
dvips -E
\epstool --bbox --copy datei.eps datei.tmp
mv datei.tmp datei.eps
problemlos erstellt worden. Die anschließende Konvertierung nach
pdf erfolgte sowohl mit ps2pdf als uch dem Distiller.
Danke für den Hinweis auf den Distiller, mit dem hat's problemlos
geklappt, mit ps2pdf nicht. Irgendwie scheint bei mir was mit
Ghostscript nicht zu stimmen (oder Win 98SE ist vielleicht doch schon
zu alt :-).

Jetzt gibt's auch keine merkwürdigen Fehlermeldungen, nur noch bei
einzelnen PDF-Dateien folgende Warnung:


"pdfTeX warning: (file test.pdf): PDF inclusion: Page Group detected
which pdfTeX can't handle. Ignoring it."

Kann ich das ignorieren? In der Testdatei und auch deren Ausdruck
sieht's erstmal alles richtig aus. Oder kann's da irgendwelche
Überraschungen geben?

Grüßle

Seb.

Dr Engelbert Buxbaum
2009-03-25 13:27:36 UTC
Permalink
Post by Sebastian Berndt
Wie läuft denn dann das Einbinden bei pdfLaTeX? Bis jetzt hat bei mir
noch jeder Dateityp irgendeinen mehr oder weniger kryptischen Fehler
ausgeworfen. Muß ich das mit einem anderne Paket als "graphicx"
machen?
Nein, graphicx ist schon richtig, etwa so:

\documentclass[pdftex]{article}

\usepackage{graphicx}

\begin{document}

\begin{figure}
\caption{Ein Notenbeispiel }
\label{score:Vivaldi}
\centering
\includegraphics[options]{BeispielFolder/Vivaldi}
\end{figure}

\end{document}

Mit den Options kannst Du die Graphik drehen, beschneiden,
vergrößern/verkleinern ...

Mit "Siehe Beispiel \ref{score:Vivaldi} auf Seite \pageref{score:Vivaldi}"
kannst Du im Text auf das Beispiel Bezug nehmen.

Beachte den / als Pfadtrenner, wie in Unix (also nicht \ wie sonst in
Windows)

Wichtig ist, den packages zu sagen daß Du pdfTeX verwendest, damit die
entsprechenden \specials verwendet werden. Das kann man in den
\usepackage-Anweisungen tun oder, wie hier, global in der
\documentclass-Deklaration.

Neben pdf versteht pdfTeX auch noch png und jpg. Andere Graphikformate
mußt Du konvertieren, etwa mit IrfanView (pdf für Vektor-, png für
Pixel-Graphiken).

Man könnte natürlich auch eine eigene Umgebung für Notenbeispiele, mit
eigenem Zähler erzeugen, besonders wenn noch andere Typen von Abbildungen
im Text vorkommen. Melde Dich einfach noch mal wenn Du das brauchst und
damit nicht klar kommst.
Herbert Voss
2009-03-25 13:41:50 UTC
Permalink
Post by Dr Engelbert Buxbaum
\documentclass[pdftex]{article}
die Option [pdftex] ist überflüssig.

Herbert
Franz Sauerzopf
2009-03-24 09:51:43 UTC
Permalink
Post by Sebastian Berndt
Moin,
ich versuch einige kleinere Notenbeispiele in meine Dissertation
einzufügen. Diese erzeuge ich mittels PMX und MusiXTeX. Das Tutorial zu
PMX für Anfänger (wie mich) "Typesetting music with PMX" von Cornelius
Noak (pmxccn.pdf) heißt es unter "C.4 PMX and LaTeX", die beste Lösung
für mein Vorhaben sei, erst mit PMX -- MusiXTeX -- dvips eine PS-Datei
zu erzeugen und diese dann in eine EPS-Datei zu konvertieren, z.B. mit
ghostview.
Nun warnt mich aber ghostview, daß das bei einigen Befehlen, unter
anderem initmatrix, zu Fehlern bei der Einbettung in andere Programme
kommen könnte und Dateien, die solche Befehle enthalten keinesfalls mit
"Wird der Befehl PS zu EPS nicht richtig angewendet, kann es sein, daß
PostScript-Dateien mit falschen DSC-Kommentaren erzeugt werden und daß
Probleme beim Einbetten in ein anderes Dokument auftreten."
Meine Musikbeispiele enthalten unter anderem initmatrix (und eine ganze
Reihe andere Befehle, bei denen "Datei --> Meldungen": "EPS file must
not use ...", auswirft). Wenn ich dennoch nach eps konvertiere und das
dann in meine Diss einbaue, klappt es trotzdem.
Ich möchte da jetzt keine flamewar provozieren, aber wie wär's mit lilypond,
das ich sehr gerne habe, um Noten in hoher Qualität zu setzen. Lt. Manual (hier
nicht getestet) kann man den Code dann sehr schön in LaTeX einbinden:
http://lilypond.org/doc/v2.12/Documentation/user/lilypond-program/LaTeX#LaTeX

Liebe Grüße
Franz
Sebastian Berndt
2009-03-25 09:58:14 UTC
Permalink
Post by Franz Sauerzopf
Ich möchte da jetzt keine flamewar provozieren, aber wie wär's mit lilypond,
das ich sehr gerne habe, um Noten in hoher Qualität zu setzen.
Und das, nachdem ich vier Fünftel der Beispiele fertig habe :-)

Eine Nachfrage: Kann lilypond auch Gregorianik? Das brauche ich
nämlich für mein letztes Fünftel, wofür ich mich eh nochmal näher in
MusiXTeX einarbeiten müßte.

Grüßle

Seb.
Philipp Stephani
2009-03-25 12:13:15 UTC
Permalink
Post by Sebastian Berndt
Post by Franz Sauerzopf
Ich möchte da jetzt keine flamewar provozieren, aber wie wär's mit lilypond,
das ich sehr gerne habe, um Noten in hoher Qualität zu setzen.
Und das, nachdem ich vier Fünftel der Beispiele fertig habe :-)
Eine Nachfrage: Kann lilypond auch Gregorianik?
Laut Dokumentation ja. Aber schau doch mal vorher lieber selber nochmal
im Handbuch nach, ob es auch alle Features bietet, die du brauchst.
--
Replace “READ-MY-SIG” by “tcalveu” to answer by mail.
Loading...