Discussion:
SVG in LaTeX einbinden?
(zu alt für eine Antwort)
derSESO
2006-06-12 08:51:02 UTC
Permalink
Hallo!

Gibt es inzwischen eine Möglichkeit, SVG's in LaTeX einzubinden?
Habe die Beiträge hier gelesen, allerdings besteht bei uns nicht die
Möglichkeit die svg-Dateien umzuwandeln, da die SVG's erst zur
Darstellung mit dynamischen Inhalten generiert werden.
Daher suchen wir eine Möglichkeit, SVG direkt in LaTeX einzubinden
ohne diese vorher umwandeln zu müssen.
Stefan Lagotzki
2006-06-12 09:58:01 UTC
Permalink
Post by derSESO
Gibt es inzwischen eine Möglichkeit, SVG's in LaTeX einzubinden?
Habe die Beiträge hier gelesen, allerdings besteht bei uns nicht die
Möglichkeit die svg-Dateien umzuwandeln, da die SVG's erst zur
Darstellung mit dynamischen Inhalten generiert werden.
Dann hängt doch einen automatischen Schritt an die Erzeugung der
SVG-Dateien an. Daran muss doch niemand interaktiv arbeiten.
Post by derSESO
Daher suchen wir eine Möglichkeit, SVG direkt in LaTeX einzubinden
ohne diese vorher umwandeln zu müssen.
SVG lässt sich direkt nur in XML-FO-Dateien nutzen, die dann mit
FOP in PDF umgewandelt werden. Aber das wäre eine ganz andere Lösung ...

Stefan

.
derSESO
2006-06-12 10:00:43 UTC
Permalink
Post by Stefan Lagotzki
...
Dann hängt doch einen automatischen Schritt an die Erzeugung der
SVG-Dateien an. Daran muss doch niemand interaktiv arbeiten.
...
Die SVG's werden per Caché (Datenbank von Intersystems) erzeugt, aber
nicht gespeichert und dann per "<embed type='image/svg-xml'
src='svgklasse.cls' ...>" angezeigt.
Welchen Schritt gilt es da anzuhängen?

MFG
Sven
Christian Gollwitzer
2006-06-12 11:43:24 UTC
Permalink
Post by derSESO
Post by Stefan Lagotzki
...
Dann hängt doch einen automatischen Schritt an die Erzeugung der
SVG-Dateien an. Daran muss doch niemand interaktiv arbeiten.
Die SVG's werden per Caché (Datenbank von Intersystems) erzeugt, aber
nicht gespeichert und dann per "<embed type='image/svg-xml'
src='svgklasse.cls' ...>" angezeigt.
Welchen Schritt gilt es da anzuhängen?
Das ist kein Latex, sondern HTML. Der Browser wird aufgefordert, per
HTTP das SVG zu holen. Wie erzeugst Du denn den Latex-Quelltext? Du
musst das svgklasse-Dingens lokal laufen lassen (oder einfahc auch einen
HTTP-Request absetzen), und das SVG dann z.B. mit svg2pdf umwandeln. Du
wirst aber kaum darumherumkommen, Skripte zu schreiben.

Christian
Frederik Elwert
2006-06-12 10:03:19 UTC
Permalink
Post by derSESO
Gibt es inzwischen eine Möglichkeit, SVG's in LaTeX einzubinden?
Das würde mich auch interessieren!

Falls es aber nicht geht, wäre es vielleicht eine Möglichkeit, die SVGs
mit Inkscape umzuwandeln. Inkscape kann auch auf der Kommandozeile als
Transformationswerkzeug eingesetzt werden und ps oder eps exportieren.
Noch nicht perfekt, aber für einfache Grafiken sollte es reichen.

Liebe Grüße
Frederik
Jan C. Schmitz
2006-06-12 16:38:58 UTC
Permalink
Post by Frederik Elwert
Falls es aber nicht geht, wäre es vielleicht eine Möglichkeit, die SVGs
mit Inkscape umzuwandeln. Inkscape kann auch auf der Kommandozeile als
Transformationswerkzeug eingesetzt werden und ps oder eps exportieren.
Noch nicht perfekt, aber für einfache Grafiken sollte es reichen.
Ja, es klappt zumindest ohne Berücksichtigung des Alpha-Kanals
(Transparenz). Hinzu kommt, dass immer ein weißer Hintergrund in Größe des
Dokumentes mitausgegeben wird, sodass pdfcrop nicht mehr viel beschneiden
kann.

Wenn man transparente Objekte als PNG exportiert, muss man sicherstellen,
dass ein weißer Hintergrund eingestellt ist. Default scheint ein schwarzer
Hintergrund beim Export zu sein, was bisweilen eigenwillige
Export-Ergebnisse zu Tage förderte...

Alles mit der aktuellen (stable) Version 0.43.

Gruß
Jan
Heiko Oberdiek
2006-06-12 16:56:56 UTC
Permalink
Post by Jan C. Schmitz
Post by Frederik Elwert
Falls es aber nicht geht, wäre es vielleicht eine Möglichkeit, die SVGs
mit Inkscape umzuwandeln. Inkscape kann auch auf der Kommandozeile als
Transformationswerkzeug eingesetzt werden und ps oder eps exportieren.
Noch nicht perfekt, aber für einfache Grafiken sollte es reichen.
Ja, es klappt zumindest ohne Berücksichtigung des Alpha-Kanals
(Transparenz). Hinzu kommt, dass immer ein weißer Hintergrund in Größe des
Dokumentes mitausgegeben wird, sodass pdfcrop nicht mehr viel beschneiden
kann.
pdfcrop beruht auf Ghostscripts bbox-Device, das dürfte mehr
die Operatoren auswerten, als welche Pixel welche Farbe haben.
Alternativ kannst du dir ein Skript basteln, dass die PDF-Grafik
nach PNM wandelt. Dann kannst du pnmcrop mit Option -v aufrufen
und auswerten, was wo abgeschnitten wurde. Dann kannst du
pdfcrop mit entsprechender --margin-Option aufrufen.

Viele Grüße
Heiko <***@uni-freiburg.de>
Carsten Vogel, Dresden
2006-06-12 11:46:56 UTC
Permalink
Post by derSESO
Hallo!
Gibt es inzwischen eine Möglichkeit, SVG's in LaTeX einzubinden?
Habe die Beiträge hier gelesen, allerdings besteht bei uns nicht die
Möglichkeit die svg-Dateien umzuwandeln, da die SVG's erst zur
Darstellung mit dynamischen Inhalten generiert werden.
Daher suchen wir eine Möglichkeit, SVG direkt in LaTeX einzubinden
ohne diese vorher umwandeln zu müssen.
das vielleicht nicht, aber man könnte es ebenso dynamisch mit einem
convert altedatei.svg lateximport.pdf [|eps] "parsen"


converst gibt's von ImageMagick
Rolf Niepraschk
2006-06-12 11:55:41 UTC
Permalink
Post by Carsten Vogel, Dresden
Post by derSESO
Hallo!
Gibt es inzwischen eine Möglichkeit, SVG's in LaTeX einzubinden?
Habe die Beiträge hier gelesen, allerdings besteht bei uns nicht die
Möglichkeit die svg-Dateien umzuwandeln, da die SVG's erst zur
Darstellung mit dynamischen Inhalten generiert werden.
Daher suchen wir eine Möglichkeit, SVG direkt in LaTeX einzubinden
ohne diese vorher umwandeln zu müssen.
das vielleicht nicht, aber man könnte es ebenso dynamisch mit einem
convert altedatei.svg lateximport.pdf [|eps] "parsen"
converst gibt's von ImageMagick
Das ist eine schlechte Idee! Eben weil "convert" zu "ImageMagick"
gehört, ist es hervorragend dazu geeignet, aus herrlichen Vektorgrafiken
dumme Pixelgrafiken zu machen...

...Rolf
Carsten Vogel, Dresden
2006-06-12 12:09:49 UTC
Permalink
Post by Rolf Niepraschk
Das ist eine schlechte Idee! Eben weil "convert" zu "ImageMagick"
gehört, ist es hervorragend dazu geeignet, aus herrlichen Vektorgrafiken
dumme Pixelgrafiken zu machen...
Autsch-ja! Ich dachte convert 2 pdf würde das intelligentes
Vektorgrafikformat beibehalten.
Heiko Oberdiek
2006-06-12 13:20:56 UTC
Permalink
Post by Rolf Niepraschk
Post by Carsten Vogel, Dresden
Post by derSESO
Hallo!
Gibt es inzwischen eine Möglichkeit, SVG's in LaTeX einzubinden?
Habe die Beiträge hier gelesen, allerdings besteht bei uns nicht die
Möglichkeit die svg-Dateien umzuwandeln, da die SVG's erst zur
Darstellung mit dynamischen Inhalten generiert werden.
Daher suchen wir eine Möglichkeit, SVG direkt in LaTeX einzubinden
ohne diese vorher umwandeln zu müssen.
das vielleicht nicht, aber man könnte es ebenso dynamisch mit einem
convert altedatei.svg lateximport.pdf [|eps] "parsen"
converst gibt's von ImageMagick
Das ist eine schlechte Idee! Eben weil "convert" zu "ImageMagick"
gehört, ist es hervorragend dazu geeignet, aus herrlichen Vektorgrafiken
dumme Pixelgrafiken zu machen...
Es besteht aber die Möglichkeit, die Datei delegates.mk mit besseren
Regeln auszustatten.

Viele Grüße
Heiko <***@uni-freiburg.de>
Rolf Niepraschk
2006-06-12 14:09:41 UTC
Permalink
Heiko Oberdiek schrieb:
...
Post by Heiko Oberdiek
Es besteht aber die Möglichkeit, die Datei delegates.mk mit besseren
Regeln auszustatten.
Ah, ja: Lass mal hören. Wie heißt die Regel? Was muss der unbedarfte
Nutzer anstellen, damit ich nicht mehr Recht habe?

...Rolf
Heiko Oberdiek
2006-06-12 15:45:04 UTC
Permalink
Post by Rolf Niepraschk
...
Post by Heiko Oberdiek
Es besteht aber die Möglichkeit, die Datei delegates.mk mit besseren
Regeln auszustatten.
Ah, ja: Lass mal hören. Wie heißt die Regel? Was muss der unbedarfte
Nutzer anstellen, damit ich nicht mehr Recht habe?
| Delegate command file.
|
| Commands which specify
|
| decode="in_format" encode="out_format"
|
| specify the rules for converting from in_format to out_format These
| rules may be used to translate directly between formats.
|
| Commands which specify only
|
| decode="in_format"
|
| specify the rules for converting from in_format to some format that
| ImageMagick will automatically recognize. These rules are used to
| decode formats.
|
| Commands which specify only
|
| encode="out_format"
|
| specify the rules for an "encoder" which may accept any input format.

Beispiel für DVI:

| <delegate decode="dvi" command='dvips -q -o "%o" "%i"' />

Viele Grüße
Heiko <***@uni-freiburg.de>
Rolf Niepraschk
2006-06-13 06:48:21 UTC
Permalink
Heiko Oberdiek schrieb:
...
Post by Heiko Oberdiek
| <delegate decode="dvi" command='dvips -q -o "%o" "%i"' />
Mich interessiert das Beispiel für SVG! Darum ging es doch hier.

...Rolf
Uwe Borchert
2006-06-12 13:06:33 UTC
Permalink
Hallo,

On Mon, 12 Jun 2006 13:46:56 +0200
"Carsten Vogel, Dresden" <***@wh10.tu-dresden.de> wrote:

...[SVG in LaTeX einbauen]...
Post by Carsten Vogel, Dresden
das vielleicht nicht, aber man könnte es ebenso dynamisch mit einem
convert altedatei.svg lateximport.pdf [|eps] "parsen"
converst gibt's von ImageMagick
Kommt da auch das Richtige raus? Ich nutze convert nur Vektor -> Raster und
weiss nicht genau ob Vektor -> Vektor so geht. Aber hier eine Alternative,
mein Spickzettel zum SVGs aus der Kommandozeile drucken:

---[schnipp]---

SVG-Dateien aus der Kommandozeile
drucken oder in PS-Dateien wandeln

Inkscape und SodiPodi sind dazu in der Lage. Der Aufruf
ist bei beiden Programmen identisch. Der Grund liegt in
der Verwandtschaft der beide Programme.

Die benoetigten Optionen:

-z Keine GUI verwenden
-f --file= Name der Eingabedatei
-p --print== Definition der Ausgabe
-p $DRUCKERNAME
-p ">outfile.ps"

Hier die Beispiele:

SodiPodi

sodipodi -z --file=infile.svg --print=">outfile.ps"
sodipodi -z --file=infile.svg --print=lp

Inkscape

inkscape -z --file=infile.svg --print=">outfile.ps"
inkscape -z --file=infile.svg --print=lp

Die erzeugten PS-Dateien koennen mit ps2eps nach EPS
konvertiert werden.

Sketch kann keine SK oder SVG-Dateien per Komanndozeile
ausdrucken oder nach PS konvertieren.

---[schnapp]---

Nachtrag: ps2pdf gibt es natuerlich auch. Ich nutze aber VTeX, das
kann EPS auch in PDF-Output einbauen. Ach ja: wer weiss ob es doch
einen Weg gibt mit Sktech/Skencil SK-Dateien nach [E]PS oder PDF zu
konvertieren? Oh! sk2ps.py liegt unter Sketch-0.6.15/lib rum! Und
ein sk2ps ind /usr/bin . Grins! Die Frage hat mich um einen Schritt
weiter gebracht. ;-)=)

MfG

Uwe Borchert
Karsten Heymann
2006-06-14 16:03:33 UTC
Permalink
Hallo,
Post by derSESO
Gibt es inzwischen eine Möglichkeit, SVG's in LaTeX einzubinden?
Ich war erfolgreich damit, die svg-Bilder in scribus zu importieren und als
pdf zu exportieren.

Gruß,
Karsten
Uwe Borchert
2006-06-14 16:31:01 UTC
Permalink
Hai,

On Wed, 14 Jun 2006 18:03:33 +0200
Post by Karsten Heymann
Post by derSESO
Gibt es inzwischen eine Möglichkeit, SVG's in LaTeX einzubinden?
Ich war erfolgreich damit, die svg-Bilder in scribus zu importieren und als
pdf zu exportieren.
Schlimmer gehts immer! Kurzkochanleitung/Spickzettel von meinem Datengrab:

-=schnipp=-

SVG-Dateien aus der Kommandozeile
drucken oder in PS-Dateien wandeln

Inkscape und SodiPodi sind dazu in der Lage. Der Aufruf ist bei beiden
Programmen identisch. Der Grund liegt in der Verwandtschaft der beide
Programme.

Die benoetigten Optionen:

-z Keine GUI verwenden
-f --file= Name der Eingabedatei
-p --print== Definition der Ausgabe
-p $DRUCKERNAME
-p ">outfile.ps"

Hier die Beispiele:

SodiPodi

sodipodi -z --file=infile.svg --print=">outfile.ps"
sodipodi -z --file=infile.svg --print=lp

Inkscape

inkscape -z --file=infile.svg --print=">outfile.ps"
inkscape -z --file=infile.svg --print=lp

Die erzeugten PS-Dateien koennen mit ps2eps nach EPS oder ps2pdf nach
PDF konvertiert werden.


Sketch direkt kann keine SK oder SVG-Dateien per Komanndozeile
ausdrucken oder nach PS konvertieren. Es existiert jedoch ein phyton
Skript sk2ps in /usr/bin .

Sketch

sk2ps infile.sk > outfile.eps

Konvertierung nach PDF dann mit ps2pdf moeglich.

-=schnapp=-

In diesem Fall mit sodipodi oder inkscape nach PS, dann passend nach EPS
oder PDF. Skribus braucht etwas arg viel Hardware und laeuft auf meiner
Kiste (Celeron 333MHz, 256 MB) nicht so besonders fluessig.

MfG

Uwe Borchert

Loading...