[linux-l] Postscript vs. SVG (war: Sort parallelisieren)

Oliver Bandel oliver at first.in-berlin.de
So Jan 7 11:58:12 CET 2007


On Sun, Jan 07, 2007 at 12:57:50AM +0100, Volker Grabsch wrote:
> Liebe Gruppe,
> 
> Kenn irgendjemand einen guten Kommandozeilen-Konvertierer für
> SVG -> EPS?
> 
> 
> Hier der Zusammenhang, ein OnT-Thread aus einem OT-Thread geboren:
> 
> 
> On Sat, Jan 06, 2007 at 02:58:32PM +0100, Oliver Bandel wrote:
> > Letztens habe ich mal eben ein kleines Toolchen geschrieben,
> > den ewig lange dauernden - und nicht funktionierende -
> > Ansatz von "ich nehme Excel, das ist dafür gut geeignet"
> > beenden dürfen.
> [...]
> > Diese ach so tolle Lösung mit Standardsoftware, die ja die Arbeitseffektivität
> > so toll steigern soll, weil man nicht alles neu schreiben braucht,
> [...]
> > Etwas Perlund Postscript-Kenntnisse, und die Tonnenweise Logs
> > sind nun mit einemAufruf auf der Kommandozeile grafisch
> > dargestellt und jedes Statistikfile bekommt eine Seite  im pdf. :)
> 
> Sowas ist cool. Und davon abgesehen: *Du* hast wirklich Standardsoftware
> eingesetzt. Immerhin ist Postscript eine Programmiersprache mit Vektor-
> Grafik-Ausgabe, die nicht nur PCs, sondern auch viele Drucker verstehen.
[...]


Naja, mit Standardsoftware - dem allgemeinen Sprachgebrauch folgend -
meinte ich in obigem, daß man mit den geläfigen sog.Office-Programmen
arbeitet. Und das tat ich nicht, sondern der Kollege. Und statt
einer schnellen Lösung (welche eh nicht nachhaltig gewesen wäre)
gab es da nur Frust und Genervtheit.

Ich denke, Postscript ist eher eine Nische.
Eine tolle Nische,, aber eine kleine Nische.



> 
> Ich habe auch mal ne graphische Ausgabe gebraucht und dafür PostScript
> erzeugt. Aber irgendwie ist mir das nicht sauber genug.

Ja,man kann damit auch böse auf die Nase fallen.
Kann manchmal nerven.Mussman schon sehr überlegt ran gehen,
am besten muss man sich mal eine eigene Bibliothek schreiben,
die einem alles schön sauber wrapt, wasman braucht.


> Da gibt es so
> viele nervige Details, die schief gehen können. Einen guten Leitfaden
> habe ich nirgends gefunden.

BlueBook.

    http://www-cdf.fnal.gov/offline/PostScript/BLUEBOOK.PDF


Und dazu das RedBook (Reference):
    http://www-cdf.fnal.gov/offline/PostScript/PLRM2.pdf


Und richtig gut als Tutorial mit praktischen Beispielen
ist auch noch das Acumen Journal:
    http://www.acumentraining.com/AcumenJournal.html



> Generiertes PostScript ist viel zu
> kompliziert um daraus zu lernen. Kurzum, es war mir zu schwammig.

Generiertes Postscript ist manchmalrecht kompliziert und verwendet
anspruchsvolle Features, oder es ist plain und dumm und man lernt deswegen
nix.
Reverse Engineering ist ja grundsätzlich nicht soeinfach (IMHO) und
bei Postscript noch schwerer, IMHO, als in anderen Sprachen.
Aber das liegt vielleicht an der mangelnden Übung ;-)



> 
> Ich werde das Programm irgendwann mal modernisieren, und dann wird es
> ein paar mehr Features haben, und SVG ausgeben. Das ist sauberer
> definiert, und wird mittlerweile auch von Browsern vestanden (was
> meistens wichtiger ist als Drucker).

Naja, wenn das nun also endlich von Browsern verstanden wird, kann man sich
das ja malanschauen. Bisher war es ja recht problematisch damit.
Kann man mit SVG auch mehrseitige Dokumente setzen, oder nur Einzelbilder?


> 
> Was Druck-Dokumente angeht: Da liegen die Anforderungen meist sehr hoch,
> wie hast du die erfüllen können, also dass die Grafiken ordentlich
> beschriftet und erklärende Texte hübsch gesetzt sind?

Ich habe minimale Ausgaben gemacht.
Da gab es eine Seitennummerierung (Seite x von y) und den Namen der
Eingabedatei auf jeder Seite.
Unter jedem Diagramm stand dann noch, worum es dabei geht,
also zum Beipiel "aserv", "RWS" (für Read+write/s) usw.

Es gibt auch eine schwarze Achse mit roten, vertikalen Strichen alle 60 Minuten
(== alle 60 Datenpunkte).

Man hätte noch mehr machen können, aber es war ein Schnellschuss.
Ein Hack (Quick-and-Dirty). Deswegen auch das Erzeugen der Datenfiles mit 
einem extra-Tool, damit ich den running Hack nicht changen muss. ;-)

Wenn darausmehr werden soll, würde ich es systematischer angehen
und - da ich das OK ja dafür nun habe - es in OCaml reimplementiern.
Dann kann man da allesmögliche mit Modulen schön zusammen stöpseln.
Und Wrappers mit FP, oder wenn ich meine, daß es Sinn macht, auch OO.
So flexibel und elegant geht das in Perl nicht, weil Perl selber ein
kruder Hack ist. ;-)


> 
> Mein Favorit in solchen Dingen ist LaTeX. Zu schade nur, dass LaTeX
> kein SVG einbinden kann.

Hätte ich auch am liebsten genommen, dann hätte ich die Grafiken
eher EPS-mäßig gemacht und dann mit \includegraphics eingebunden.
Aber da scheint kein LaTeX auf der Maschine installiert zu sein.
troff wärenoch möglich gewesen,oder schnell noch lout installieren, aber
das sind alles Umwege, die unsinnig wären, denn ichfinde es besser,
man baut die Sachen so, daß sie auf der Installation, dieman vorfindet,
(und die von Admins gemacht wird, auf deren Entscheidungen man keinen Einfluss hat)
auch gebaut werden können.
"Mit Bordmitteln" arbeiten, statt erst zig komponenten neu zu installieren,
um dann endlich loslegen zu können.
Wirdnämlich die Maschine neu aufgesetzt,mussman auch alles, was man noch so extra
braucht,auch wieder nachinstallieren.
Und das ist dann doch nerv-Krams. Dann hat manb was geschrieben, was alleine
nicht funktioniert.
Und da ps2pdf an Bord war, habe ich mich dann für Postscript entschieden.

Und selbst wenn LaTeX da gewesen wäre, wäre es von der benutzung doch
mit Postscript her vielleicht einfacher gewesen.

Oder plainTeX nehmen, weilman da auch rein Pipe-en kann :)
Aber dann wird es wieder komplizierter.
Nee, dann war Postscript schon die beste Entscheidung in dem Umfeld. :)

Hängt ja auch davon ab, ob das ein Hauptarbeitsgebiet sein sollte,
oder ob das "ein Tool am Rande" ist.


> Wäre ja nicht so tragisch, wenn man es wie
> bei PNG- und JPEG-Dateien einfach nach EPS konvertieren könnte. Aber
> gibt es da kein Kommandozeilentool?

Gute Frage. Macht ImageMagick/convert sowas nicht?
Ggf. mal beiden TeX-Leuten nachfragen (tex-d-l oder in Newsgroups).


> 
> Ich mache das bisher immer per Hand: SVG-Datei in Inkscape öffnen und
> dann als EPS speichern. Inkscape lässt mich dies leider nicht per
> Kommandozeile tun. :-(

Also ein Programm schreiben (gibt's da nicht schon was?), das die
Mausklicks emuliert... ;-)

(Keine Macros in Inkscape?)


Gruß,
   Oliver




Mehr Informationen über die Mailingliste linux-l