mein Ziel ist es eine gegebene PDF-Datei in LaTeX (KOMA-Script)
umzuwandeln und diese dann weiterzubearbeiten. Ein Problem habe ich
dabei mit Bildern. Ei Tool zum Extrahieren aller Grafiken aus einer
PDF-Datei habe ich nicht gefunden. Ich mache deshalb mit Gimp einen
Screenshot und speichere ihn im EPS-Format. Hier gibt es zwei große
Probleme:
1. Die EPS-Datei ist viel zu groß. Ich habe hier mehrere Tests mit einem
über eine Seite gehenden Bild gemacht und Bildgrößen von 260-320KB
erhalten. Im Prinzip könnte 1/10 dieser Größe reichen.
2. Die Umwandlung mit epstopdf bringt unbrauchbare Ergebnisse. Vor allem
eine Rotfärbung an den Rändern der Bilder fällt sehr unangenehm auf.
Auch die Bildgröße scheint nicht übernommen zu werden.
Ich habe in der FAQ, im grfguide, bei google und in diversen manpages
nichts gefunden.
Jens
Hast du Adobe Acrobat?
Da geht File->Export->Extract Images As.
Viel Erfolg,
Nick
--
E-Mail: ni...@netlane.com
Ich habe einen Acrobat Reader 5.0.5 auf Debian 3.0 woody vom 25. April
2002. Es gibt unter "File" kein "Export". Welche Version unter welchem
Betriebssystem benutzt Du? Oder meinst Du ein anderes Acrobat-Programm
als den Acrobat Reader?
Jens
Dafür langt der Acrobat Reader nicht. Dazu brauchst du den kompletten
Acrobat.
Wie es sonst gehen könnte hab ich leider auch keine Ahnung :(
ciao
SAM
pdf und Tabtaste liefert doch alles, was mit pdf
zu tun hat und auf deinem System installiert ist,
z.B. pdfimages
Herbert
NAME
pdfimages - Portable Document Format (PDF) image extractor
(version 2.01)
SYNOPSIS
pdfimages [options] PDF-file image-root
DESCRIPTION
Pdfimages saves images from a Portable Document Format
(PDF) file as Portable Pixmap (PPM),
Portable Bitmap (PBM), or JPEG files.
Pdfimages reads the PDF file, scans one or more pages, PDF-file,
and writes one PPM, PBM, or JPEG
file for each image, image-root-nnn.xxx, where nnn is the
image number and xxx is the image type
(.ppm, .pbm, .jpg).
Er hat nicht Adobe Acrobat Reader sondern Adobe Acrobat geschrieben,
letzteres ist kostenflichtig und nur fuer MS Windows oder MacOS zu
haben. Dennoch kannst Du es mal mit pdfimages probierern, ist bei xpdf
dabei (bei Debian im Paket xpdf-utils).
Gruß,
Bernhard
--
_________ http://www.bwalle.de _________________________________________________
All the existing 2.0.x kernels are to buggy for 2.1.x to be the
main goal.
-- Alan Cox
Leider führt das bei mir zu keinerlei Erfolg, d.h. es werden keine
Bilder extrahiert. Ich habe es auch mal mit anderen Dokumenten probiert
und dort hat es ebenfalls nicht funktioniert. Ein ähnliches Tool (psrip)
habe ich auch erfolglos getestet. Dort konnte ich immerhin aus einer
PS-Datei ein Bild extrahieren. Allerdings konnte ich Dich das nicht
erfolgreich auf meine PDF-Datei (auch nicht nach Umwandlung in PS) anwenden.
Es wäre natürlich viel günstiger die Bilder direkt zu extrahieren (und
ich hoffe es findet sich noch ein Weg dafür). Wenn das jedoch nicht
gehen sollte, was wäre dann ein Weg die Bilder in einigermaßen
vernünftiger Qualität und Größe als eps/pdf zu bekommen?
Jens
> Es wäre natürlich viel günstiger die Bilder direkt zu extrahieren (und
> ich hoffe es findet sich noch ein Weg dafür). Wenn das jedoch nicht
> gehen sollte, was wäre dann ein Weg die Bilder in einigermaßen
> vernünftiger Qualität und Größe als eps/pdf zu bekommen?
Nimm Ghostscript, damit kannst Du in ein wählbares verlustfreies
Grafikformat mit wählbarer Auflösung und optionalem Antialiasing
"drucken" - jede Seite in eine Bilddatei.
Lies USE.HTM.
--
Mit Gruss aus der Lausitz
Uwe Kuhmann
Ich habe hier keine passende use.htm. Meinst Du eigentlich das Drucken
per Kommandozeile oder grafischer Oberfläche? Das Drucken einer Seite
ist auch so kein Problem und Du hast recht, dass das sinnvoller wie z.B.
ein Screenshot ist. Ich habe festgestellt, dass sich mit Gimp
PDF-Dateien öffnen lassen. Jede einzelne Seite wird dann als Grafik
betrachtet (wahrscheinlich zuerst in Postscript umgewandelt). Die
Grafiken kann man dann zuschneiden und den entsprechenden Bereich als
eps exportieren. Das ist nicht so gut wie ein direktes Extrahieren der
Grafiken aus einer PDF-Datei, aber immerhin etwas. Die Dateigrößen sind
wesentlich humaner. Auf dem Bildschirm sehen die Grafiken nicht gut aus,
aber beim Drucken ist es akzeptabel.
Jens
Ist wohl eine Möglichkeit, wahrscheinlich aber nicht die Optimale!
PDF Dateien können auch Vektor Grafiken enthalten, die mit dieser Methode
gerendert und gerastert werden. Ein verlustfreies Skalieren ist damit dann
nicht mehr möglich!
Soweit ich weiss, kann man mit Corel Daraw auch PDF Dateien öffnen. Gibt es
da nicht auch irgendwie ein open source oder sonstiges freies Vektor Grafik
Programm, mit dem man PDF Dateien importieren kann?
Grüsse
SAM
Du kannst mit GS auf der Kommandozeile aus jeder Seite einer
PDF/PS-Datei ein Rasterbild in hoher Qualitaet erzeugen.
Wenn Du spaeter pdfLaTeX benutzen moechtest, dann lass JPEG
erzeugen... Wenn Du ohnehin unter Linux arbeitest, kanst Du
die entstandenen Rastergrafiken mit convert (aus ImageMagick)
in sehr viele andere Formate umwandeln und unter anderem auch
beschneiden.
Wie erzeugt man eine Rastergrafik mit Hilfe von GhostScript?
Die erste Hilfe kannst Du mit gs --help erhalten. Da werden
alle Devices aufgezaehlt. Darunter sollten verlustfreie
Grafikarten sowie PNG und JPEG sein.
Im folgenden Beispiel sind die Optionen so zusammengefasst,
dass sie in ein Shellscript passen. Dieses erhaelt als
Argumente den PDF-Dateinamen und die Nummer der Seite. Nach
dem Testen kannst Du es in einer Schleife aufrufen.
gs -dBATCH -dNOPAUSE -dFirstPage=$2 -dLastPage=$2 \
-r300x300 -sDEVICE=png16m \
-dTextAlphaBits=4 -dGraphicsAlphaBits=4 \
-sOutputFile=$1_seite$2.png $1
Dieses Beispiel erzeugt ein PNG-Bild. Andere Formate
kannst Du hinter -sDevice einstellen.
Kopiere es in ein Shellscript, Aufruf erfolgt mit
./gsbild.sh Dateiname.pdf Seite
Es kann eigentlich kein Debian Linux ohne GhostScript-
Dokumentation geben. Neben der Nutzung der Manpage gibt
es noch die Moeglichkeit, es mit locate gs | grep index.html
zu versuchen, wenn schon der Hinweis auf eine
HTML-Dokumentation kam.
Das folgende kleine Shellscript, das ich hier mn genannt
habe, macht aus einer beliebigen man-Page ein PDF.
man $1 -Tdvi > $1.dvi && dvipdfm $1.dvi && rm -f $1.dvi
Anwendungsbeispiel: mn gs
HTH && HAND
Stefan
das Extrahieren von Vektorgrafiken ist noch nicht so
einfach. Hierzu kann man aber evtl. EPS aus dem PDF
erzeugen und dieses dann beschneiden.
Auch eine seitenweise Einbindung mit 'pdfpages' und
gleichzeitiges Beschneiden waeren denkbar.
fm sam wrote:
> Ist wohl eine Möglichkeit, wahrscheinlich aber nicht die Optimale!
> PDF Dateien können auch Vektor Grafiken enthalten, die mit dieser Methode
> gerendert und gerastert werden. Ein verlustfreies Skalieren ist damit dann
> nicht mehr möglich!
Er will ja nicht skalieren, sondern die Bilder uebernehmen.
Prinzipiell kann er das PDF auch in lauter EPS-Grafiken
zerlegen und dann versuchen, diese zu bearbeiten.
> Soweit ich weiss, kann man mit Corel Daraw auch PDF Dateien öffnen. Gibt es
> da nicht auch irgendwie ein open source oder sonstiges freies Vektor Grafik
> Programm, mit dem man PDF Dateien importieren kann?
Unter Linux sieht es damit noch nicht so gut aus.
Stefan
.
> mein Ziel ist es eine gegebene PDF-Datei in LaTeX (KOMA-Script)
> umzuwandeln und diese dann weiterzubearbeiten. Ein Problem habe ich
> dabei mit Bildern. Ei Tool zum Extrahieren aller Grafiken aus einer
> PDF-Datei habe ich nicht gefunden.
Ich habe so etwas mal in dieser Art gemacht:
\documentclass{minimal}
\usepackage{graphicx}
\begin{document}
\includegraphics[width=\textwidth,page=3,%
clip,viewport=53 543 253 676]{orig}
\end{document}
Mit pdflatex übersetzt und mit 'pdftops -eps' nach EPS gewandelt. Die
Koordinaten für Viewport kann man im gv einfach auslesen. Ist bei vielen
Grafiken aber schon etwas Arbeit. Ansonsten fällt mir noch 'pdftops' +
'pstoedit' + 'xfig/...' ein.
cheerio
ralf
> Leider führt das bei mir zu keinerlei Erfolg, d.h. es werden keine
> Bilder extrahiert. Ich habe es auch mal mit anderen Dokumenten probiert
> und dort hat es ebenfalls nicht funktioniert. Ein ähnliches Tool (psrip)
kannst du mir mal eine Beispiel PDF schicken, bei der es nicht geht?
Herbert
[siehe Subject]
Auch mit dem Acrobat Reader kann man Teile einer Seite (z.B. Bilder)
extrahieren. Das geht mit dem Graphics Selection Tool, welches sich
in der Toolbar Basic Tools verbirgt. Damit zieht man einen Rahmen
um das gewünschte Bild und druckt dann in eine Datei (Option
Selected Graphic einschalten!). Weiter geht es dann mit:
* epstools -> epstopdf
* epstopdf -> pdfcrop
Im so erzeugte PDF bleiben Type1 Schriften erhalten.
Ciao
Andreas
Das mache ich natürlich. Leider kann ich Dir die PDF, von der ich hier
rede, nicht schicken, da das nur studienintern verwendet werden soll.
Stattdessen bekommst Du eine andere Datei, die ebenfalls nicht von mir
erstellt wurde. Ich habe psrip 1.3 aus Debian Testing installiert.
Jens
So hatte ich das auch in Erinnerung, allerdings geht das bei mir nicht
im Acrobat Reader. Kannst Du mir bitte sagen welche Version des Acrobat
Reader auf welchem Betriebssystem Du benutzt? Ich benutze Version 5.0.5
auf Debian woody.
Jens
das Auswaehlen von Grafiken kann (1.) im PDF gesperrt
worden sein. Und (2.) gibt es Acrobat-Versionen fuer
Linux, wo es nicht funktioniert, in dieser Newsgroup
ist das IIRC auch schon mal erwaehnt worden.
Jens Lehmann wrote:
> So hatte ich das auch in Erinnerung, allerdings geht das bei mir nicht
> im Acrobat Reader. Kannst Du mir bitte sagen welche Version des Acrobat
> Reader auf welchem Betriebssystem Du benutzt? Ich benutze Version 5.0.5
> auf Debian woody.
Mit der Version 5.x unter Windows funktioniert es. Aber
es kann passieren, dass das Bild mit lediglich 72 dpi
abgespeichert wird.
Stefan
.
Hallo Stefan,
> Du kannst mit GS auf der Kommandozeile aus jeder Seite einer
> PDF/PS-Datei ein Rasterbild in hoher Qualitaet erzeugen.
> Wenn Du spaeter pdfLaTeX benutzen moechtest, dann lass JPEG
> erzeugen... Wenn Du ohnehin unter Linux arbeitest, kanst Du
> die entstandenen Rastergrafiken mit convert (aus ImageMagick)
> in sehr viele andere Formate umwandeln und unter anderem auch
> beschneiden.
>
> Wie erzeugt man eine Rastergrafik mit Hilfe von GhostScript?
> Die erste Hilfe kannst Du mit gs --help erhalten. Da werden
> alle Devices aufgezaehlt. Darunter sollten verlustfreie
> Grafikarten sowie PNG und JPEG sein.
>
> Im folgenden Beispiel sind die Optionen so zusammengefasst,
> dass sie in ein Shellscript passen. Dieses erhaelt als
> Argumente den PDF-Dateinamen und die Nummer der Seite. Nach
> dem Testen kannst Du es in einer Schleife aufrufen.
>
> gs -dBATCH -dNOPAUSE -dFirstPage=$2 -dLastPage=$2 \
> -r300x300 -sDEVICE=png16m \
> -dTextAlphaBits=4 -dGraphicsAlphaBits=4 \
> -sOutputFile=$1_seite$2.png $1
>
> Dieses Beispiel erzeugt ein PNG-Bild. Andere Formate
> kannst Du hinter -sDevice einstellen.
> Kopiere es in ein Shellscript, Aufruf erfolgt mit
>
> ./gsbild.sh Dateiname.pdf Seite
>
Vielen Dank! Damit lassen sich wirklich sehr gute Bilder erzeugen und
die Nachbearbeitung von png-Bildern ist kein Problem. Ich denke das
Script wird bei mir in Zukunft gute Dienste tun. Für meinen Fall habe
ich jetzt png16 und r150x150 verwendet, ohne das die Qualität darunter
gelitten hat.
Noch eine Frage zum Verständnis: Das PNG-Format ist ein Rasterformat.
Innerhalb einer PDF-Datei sind aber doch eigentlich Vektorformate
günstiger, da die Grafiken eine beliebige Größe annehmen können. In
diesem konkreten Fall ist PNG wahrscheinlich günstig, weil es sich
verlustfrei erzeugen und bearbeiten lässt. Ist die Erzeugung von PNG
oder JPEG auch allgemein empfehlenswert oder ist EPS/PDF im Normalfall
günstiger?
[...]
Jens
Hier läuft nur noch Linux :-)
Mit AR5.0.5 und AR5.0.6 funktioniert es. Bevor man in eine Datei
drucken kann, muss man noch Copy anwählen, damit Selected Graphics
im Print-Menü überhaupt aktiv wird. Also: Rahmen ziehen, Klick mit
rechter Maustaste in den Rahmen, Copy wählen, dann Print wählen.
Mir AR4 funktioniert es hier momentan nicht. Segmentation Violation
Error :-( Ich war mir eigentlich ziemlich sicher, dass es schon einmal
funktioniert hat. Hmm,... Aber so ist das halt mit Software, die nicht
frei ist und die man nicht selber kompilieren darf.
Ciao
Andreas
Nochmal hallo,
> Du kannst mit GS auf der Kommandozeile aus jeder Seite einer
> PDF/PS-Datei ein Rasterbild in hoher Qualitaet erzeugen.
> Wenn Du spaeter pdfLaTeX benutzen moechtest, dann lass JPEG
> erzeugen... Wenn Du ohnehin unter Linux arbeitest, kanst Du
> die entstandenen Rastergrafiken mit convert (aus ImageMagick)
> in sehr viele andere Formate umwandeln und unter anderem auch
> beschneiden.
Bei der Konvertierung habe ich folgendes Problem: Das entstandene
PNG-Bild ist sehr hoch und breit. Verwende ich pdflatex gibt es trotzdem
kein Problem und das Bild passt auf eine Seite. Wodurch wird die
Bildgröße da bestimmt? Ich habe ein einfaches
\includegraphics{foo}
verwendet.
Bei der Konvertierung in eps entstehen wieder sehr große Dateien z.B. mit
$ convert -monochrome foo.png foo.eps
Daraus ergibt sich das nächste Problem, dass eine mit latex erzeugte
dvi-Datei das Bild übermäßig groß darstellt. Ich dachte ein:
\includegraphics[width=120pt]{bild}
hilft dabei, aber das hat keinen Effekt. Wie erzeugt man eine eps und
eine png, die sich bezüglich latex/pdflatex gleich verhalten?
Man könnte natürlich nur pdflatex arbeiten und am Ende in PS
konvertieren. Bis jetzt bin ich allerdings gewohnt mit DVI zu arbeiten
und dann in PS und PDF zu konvertieren. Der DVI-Betrachter hat den
Vorteil, dass er sich automatisch aktualisiert.
Jens
mit einem aehnlichen Script arbeite ich schon eine Weile und
fuer Anpassungen kannst Du ja noch mal in die (etwas
eigenwillig organisierte) Dokumentation von 'gs' sehen. Ich habe
dann auch noch festgestellt, dass die Datei 'Use.htm' heisst
und Du hast eventuell nach 'use.htm' gesucht. Schau mal
unter http://www.ghostscript.com nach weiteren Quellen.
Jens Lehmann wrote:
> Vielen Dank! Damit lassen sich wirklich sehr gute Bilder erzeugen und
> die Nachbearbeitung von png-Bildern ist kein Problem. Ich denke das
> Script wird bei mir in Zukunft gute Dienste tun. Für meinen Fall habe
> ich jetzt png16 und r150x150 verwendet, ohne das die Qualität darunter
> gelitten hat.
Es waere auch so anpassbar, dass man die Aufloesung mit
auf der Befehlszeile uebergibt. Und man koennte irgendwie
die Gesamtseitenzahl ermitteln und eine Schleife ueber
alle Seiten laufen lassen. Bei PS-Dateien geht das, bei
PDF wuesste ich jetzt nicht, wie man die Seitenzahl auslesen
kann.
> Noch eine Frage zum Verständnis: Das PNG-Format ist ein Rasterformat.
> Innerhalb einer PDF-Datei sind aber doch eigentlich Vektorformate
> günstiger, da die Grafiken eine beliebige Größe annehmen können. In
Wenn es Dir darum geht, die Bilder in exakt der selben
Groesse wieder einzufuegen, ist die beschriebene Vorgehens-
weise sicher ausreichend. Nur hast Du bisher nicht
viel zur Art der Grafiken gesagt. In meiner Praxis kommen
viele CAD-Zeichnungen vor. Wenn ich jetzt wirklich aus
einem PDF ein Bild einer solchen CAD-Zeichnung herausholen
muesste, dann wuerde ich sicher versuchen, exakt diese
Seite des PDFs zu beschneiden und dann zu vergroessern.
Das macht aber bei vielen Seiten nicht so viel Spass.
> diesem konkreten Fall ist PNG wahrscheinlich günstig, weil es sich
> verlustfrei erzeugen und bearbeiten lässt. Ist die Erzeugung von PNG
> oder JPEG auch allgemein empfehlenswert oder ist EPS/PDF im Normalfall
> günstiger?
Also zwei Dinge sind ganz wichtig: Art der Grafiken und
Art der Weiterverwendung. Darueber ist momentan zu wenig
bekannt :-)
Stefan
.
es waere mit identify -verbose bildname.png die Aufloesung
zu pruefen. Hast Du das \includegraphics{foo} mal mit
pdfLaTeX und dem Original-PNG versucht - was passiert dann?
Ich habe mit 'identify' folgende Informationen gefunden:
Format: PNG (Portable Network Graphics)
Geometry: 2479x3508
Class: DirectClass
Type: grayscale
Depth: 8 bits-per-pixel component
Colors: 16
[Farben herausgelassen]
Resolution: 118.11x118.11 pixels/centimeter
Filesize: 38.2k
[...]
Software: GNU Ghostscript 7.05
Das sind also umgerechnet 300dpi und damit sollte auch die
Groesse richtig sein. Ein Pixel ist ja eigentlich
dimensionslos und seine Groesse wird erst durch die Aufloesung
bestimmt.
> Bei der Konvertierung in eps entstehen wieder sehr große Dateien z.B. mit
>
> $ convert -monochrome foo.png foo.eps
Hier eventuell die "Dichte" noch mal mit 300dpi angeben!
(siehe Dokumentation zu 'convert')
Moeglicherweise wird dort 72dpi als Aufloesung angenommen.
Oder in meinem Script ein anderes Format angeben (BMP, TIFF)
und das dann konvertieren.
> Man könnte natürlich nur pdflatex arbeiten und am Ende in PS
> konvertieren. Bis jetzt bin ich allerdings gewohnt mit DVI zu arbeiten
> und dann in PS und PDF zu konvertieren. Der DVI-Betrachter hat den
> Vorteil, dass er sich automatisch aktualisiert.
Das macht aber bei vielen Bildern am Ende auch keine Freude
mehr. Ich setze dann meist die Klassenoption 'draft', um nur
die Rahmen angezeigt zu bekommen.
Wenn alles nicht funktioniert, stell eine Beispielseite zum
Download bereit, dann kann man sich das mal ansehen.
Stefan
.
> Und man koennte irgendwie die Gesamtseitenzahl ermitteln und eine
> Schleife ueber alle Seiten laufen lassen. Bei PS-Dateien geht das, bei
> PDF wuesste ich jetzt nicht, wie man die Seitenzahl auslesen
> kann.
Brauchst Du bei "alle" nicht, gs kann über einen printf-Platzhalter im OutputFile-Parameter ein ganzes [PS|PDF]-Dokument in einzelne Seitenbilder drucken, lies Use.htm (Sorry).
gs -dBATCH -dNOPAUSE -r300x300 -sDEVICE=png16m \
-dTextAlphaBits=4 -dGraphicsAlphaBits=4 \
-sOutputFile=$1_seite%03d.png $1
Und es geht auf diese Weise schneller, als mit einem
Schleifenaufruf aus der Shell. Wieder etwas gelernt.
Uwe Kuhmann wrote:
> Brauchst Du bei "alle" nicht, gs kann über einen printf-Platzhalter im OutputFile-Parameter ein ganzes [PS|PDF]-Dokument in einzelne Seitenbilder drucken, lies Use.htm (Sorry).
>
Vielen Dank fuer den netten Hinweis. Ich habe ja nicht
geschrieben, dass es nicht geht, sondern nur, dass ich
es zu dem Zeitpunkt nicht wusste.
mit freundlichen Gruessen
Stefan
` `
Die Doku habe ich natürlich gefunden. ;-) Ich habe erst auch nur ein
locate laufen lassen und habe gesehen, dass da kein Ergebnis vorliegt.
Ich habe anfangs nicht genauer nachgeschaut, weil ich nicht erahnt habe
welche Möglichkeiten sich mit gs ergeben.
>> Vielen Dank! Damit lassen sich wirklich sehr gute Bilder erzeugen und
>> die Nachbearbeitung von png-Bildern ist kein Problem. Ich denke das
>> Script wird bei mir in Zukunft gute Dienste tun. Für meinen Fall habe
>> ich jetzt png16 und r150x150 verwendet, ohne das die Qualität darunter
>> gelitten hat.
>
>
> Es waere auch so anpassbar, dass man die Aufloesung mit
> auf der Befehlszeile uebergibt. Und man koennte irgendwie
> die Gesamtseitenzahl ermitteln und eine Schleife ueber
> alle Seiten laufen lassen. Bei PS-Dateien geht das, bei
> PDF wuesste ich jetzt nicht, wie man die Seitenzahl auslesen
> kann.
Die Auflösung kann ich auch direkt in dem kleinen Script ändern und die
direkte Angabe der Seitenzahl ist für meine Zwecke völlig ausreichend.
>> Noch eine Frage zum Verständnis: Das PNG-Format ist ein Rasterformat.
>> Innerhalb einer PDF-Datei sind aber doch eigentlich Vektorformate
>> günstiger, da die Grafiken eine beliebige Größe annehmen können. In
>
>
> Wenn es Dir darum geht, die Bilder in exakt der selben
> Groesse wieder einzufuegen, ist die beschriebene Vorgehens-
> weise sicher ausreichend. Nur hast Du bisher nicht
> viel zur Art der Grafiken gesagt. In meiner Praxis kommen
> viele CAD-Zeichnungen vor. Wenn ich jetzt wirklich aus
> einem PDF ein Bild einer solchen CAD-Zeichnung herausholen
> muesste, dann wuerde ich sicher versuchen, exakt diese
> Seite des PDFs zu beschneiden und dann zu vergroessern.
> Das macht aber bei vielen Seiten nicht so viel Spass.
Es ging mir eigentlich mehr darum zu sagen, dass bei Vektorgrafiken
Grössenänderungen unproblematisch sind (man kann sich eine PDF-Datei ja
in beliebiger Größe anschauen), während bei Rastergrafiken eine
Größenänderung mehr Probleme bereiten sollte, zumindest ist das mein
jetziges Verständnis.
>> diesem konkreten Fall ist PNG wahrscheinlich günstig, weil es sich
>> verlustfrei erzeugen und bearbeiten lässt. Ist die Erzeugung von PNG
>> oder JPEG auch allgemein empfehlenswert oder ist EPS/PDF im Normalfall
>> günstiger?
>
>
> Also zwei Dinge sind ganz wichtig: Art der Grafiken und
> Art der Weiterverwendung. Darueber ist momentan zu wenig
> bekannt :-)
Es handelt sich um einfache technische Skizzen und Tabellen, also
nichts, bei dem es auf jedes Pixel ankommt. Weiterverwendung gibt es
keine (außer der einmaligen Verwendung mit LaTeX). Ein schönes
Erscheinungsbild war mir dennoch wichtig und vor allem eine lesbare
Schrift innerhalb der eingefügten Bilder und das habe ich, dank Dir,
geschafft.
Jens
Das klappt, wie gesagt, gut, d.h. das Bild hat etwa die ursprüngliche Größe.
> Ich habe mit 'identify' folgende Informationen gefunden:
>
> Format: PNG (Portable Network Graphics)
> Geometry: 2479x3508
> Class: DirectClass
> Type: grayscale
> Depth: 8 bits-per-pixel component
> Colors: 16
>
> [Farben herausgelassen]
>
> Resolution: 118.11x118.11 pixels/centimeter
> Filesize: 38.2k
>
> [...]
>
> Software: GNU Ghostscript 7.05
>
> Das sind also umgerechnet 300dpi und damit sollte auch die
> Groesse richtig sein. Ein Pixel ist ja eigentlich
> dimensionslos und seine Groesse wird erst durch die Aufloesung
> bestimmt.
Du hast recht. Wenn ich convert den Parameter -density mitgebe, dann
kann ich dem neuen eps die richtige Auflösung mitgeben und die Bilder
werden in dvi und pdf-Datei gleich groß dargestellt.
>> Bei der Konvertierung in eps entstehen wieder sehr große Dateien z.B. mit
>>
>> $ convert -monochrome foo.png foo.eps
>
>
> Hier eventuell die "Dichte" noch mal mit 300dpi angeben!
> (siehe Dokumentation zu 'convert')
> Moeglicherweise wird dort 72dpi als Aufloesung angenommen.
> Oder in meinem Script ein anderes Format angeben (BMP, TIFF)
> und das dann konvertieren.
Mit der Angabe der Dichte klappt es. Das Problem, was weiterhin
existiert, ist die enorme Größe der entstehenden eps-Dateien. Mit
-monochrome kann ich die Größe von 2-3 MB auf 300-400 KB drücken, aber
das ist imho immer noch kein optimales Ergebnis (die PNG-Dateien sind
bei mir 30-50 KB groß). Mit "man convert" komme ich momentan auch nicht
weiter.
>> Man könnte natürlich nur pdflatex arbeiten und am Ende in PS
>> konvertieren. Bis jetzt bin ich allerdings gewohnt mit DVI zu arbeiten
>> und dann in PS und PDF zu konvertieren. Der DVI-Betrachter hat den
>> Vorteil, dass er sich automatisch aktualisiert.
>
>
> Das macht aber bei vielen Bildern am Ende auch keine Freude
> mehr. Ich setze dann meist die Klassenoption 'draft', um nur
> die Rahmen angezeigt zu bekommen.
Das ist aber ein anderes Problem. Ohne eps-Datei gibt "latex" eine
Fehlermeldung aus, weil keine Grafik gefunden wird. Wenn man "latex"
verwenden möchte, dann wäre es gut ein paar gute eps-Dateien im
Verzeichnis zu haben.
> Wenn alles nicht funktioniert, stell eine Beispielseite zum
> Download bereit, dann kann man sich das mal ansehen.
Es funktioniert bereits alles. Natürlich wäre es schön, wenn man jetzt
noch eine ordentliche Variante für die png->eps-Konvertierung finden
würde- :-)
Jens
die Anzeige von Vektorgrafiken im Acrobat Reader ist aber
auch von den Einstellungen des Users abhaengig (gerade bei
Vektorgrafiken: siehe die Option 'line art' oder Vektor-
grafiken glaetten). Die Voreinstellung ist naemlich "nicht
glaetten".
Jens Lehmann wrote:
> Es ging mir eigentlich mehr darum zu sagen, dass bei Vektorgrafiken
> Grössenänderungen unproblematisch sind (man kann sich eine PDF-Datei ja
> in beliebiger Größe anschauen), während bei Rastergrafiken eine
> Größenänderung mehr Probleme bereiten sollte, zumindest ist das mein
> jetziges Verständnis.
Gut, ich hatte bisher das Problem des Druckens gesehen.
PDFs mit dem Ziel "Bildschirm" werden aber eigentlich
sowieso anders optimiert als PDFs mit dem Ziel "Druck"
(wenn man beides ernstnimmt).
Daher hatte ich ja auch nach der Skalierung der Grafiken
gefragt.
> Es handelt sich um einfache technische Skizzen und Tabellen, also
> nichts, bei dem es auf jedes Pixel ankommt. Weiterverwendung gibt es
> keine (außer der einmaligen Verwendung mit LaTeX).
Oh, da kommt es bei der Rasterung gerade auf 'jeden Pixel'
an! Rastere mal eine richtig schoene Formel aus LaTeX
fuer das WWW oder eine Praesentation. Da gibt es riesige
Qualitaetsunterschiede.
Stefan
.
die Option -monochrome kann bei der Rasterung zu
unerwuenschten Ergebnissen fuehren, da dann kein
richtiges Anti-Aliasing durchgefuehrt wird.
Sollte es eine Option wie 'grayscale' geben, ist
diese fuer die Qualitaet einer gerasterten Grafik
besser. In Deinem Fall wuerde ich die
*Endfassung* mit pdfLaTeX unter Verwendung der PNGs
herstellen.
Jens Lehmann wrote:
> Mit der Angabe der Dichte klappt es. Das Problem, was weiterhin
> existiert, ist die enorme Größe der entstehenden eps-Dateien. Mit
> -monochrome kann ich die Größe von 2-3 MB auf 300-400 KB drücken, aber
> das ist imho immer noch kein optimales Ergebnis (die PNG-Dateien sind
> bei mir 30-50 KB groß). Mit "man convert" komme ich momentan auch nicht
> weiter.
Nach Deinen Angaben sind es schwarze gezeichnete
Grafiken mit harten Kanten, da ist PNG eben besser
als JPEG. Sonst haette sich ein Wrapper empfohlen
(EPS kann JPEG sozusagen einpacken). Aber das kann
auch wieder andere Probleme geben.
> Das ist aber ein anderes Problem. Ohne eps-Datei gibt "latex" eine
> Fehlermeldung aus, weil keine Grafik gefunden wird. Wenn man "latex"
> verwenden möchte, dann wäre es gut ein paar gute eps-Dateien im
> Verzeichnis zu haben.
Es hat natuerlich alles seine Vor- und Nachteile.
Mit einem schnellen Rechner werden die EPS-Dateien
in der Voransicht natuerlich auch relativ rasch
aufgebaut.
Wenn Du unbedingt kleine Dateien haben willst, dann
erzeuge fuer jede Grafik eine leere Box (nur ein
Rechteck) und nenne diese Dateien dateiname.eps - sie
dienen nur als Platzhalter. Daneben liegt jede Grafik
als dateiname.png in der beschriebenen Qualitaet von
300dpi. Die Endfassung Deines Dokuments machst Du
dann mit pdfLaTeX und da siehst Du alle Bilder. Die
Voraussetzung dafuer ist, dass Du im Quelltext
\includegraphics[Optionen]{dateiname} schreibst.
Die leeren Boxen kann man ebenfalls scriptgesteuert aus
den PNGs erstellen.
Stefan
.
Als Option kann ich -depth 8 verwenden. Ich hatte monochrome nur
verwendet um die Dateien von unerträglichen 2-3 MB auf 300-400 KB zu
bringen.
> In Deinem Fall wuerde ich die *Endfassung* mit pdfLaTeX unter
> Verwendung der PNGs herstellen.
Das habe ich auch festgestellt. Die Ergebnissse im Druck und am
Bildschirm sind fast perfekt.
> Jens Lehmann wrote:
Sorry für den kleinen Hinweis, aber das könntest Du eigentlich an den
Anfang des Textes stellen (bevor Du etwas schreibst).
[...]
> Wenn Du unbedingt kleine Dateien haben willst, dann erzeuge fuer jede
> Grafik eine leere Box (nur ein Rechteck) und nenne diese Dateien
> dateiname.eps - sie dienen nur als Platzhalter. Daneben liegt jede
> Grafik als dateiname.png in der beschriebenen Qualitaet von 300dpi.
> Die Endfassung Deines Dokuments machst Du dann mit pdfLaTeX und da
> siehst Du alle Bilder. Die Voraussetzung dafuer ist, dass Du im
> Quelltext \includegraphics[Optionen]{dateiname} schreibst.
>
> Die leeren Boxen kann man ebenfalls scriptgesteuert aus den PNGs
> erstellen.
Ich habe heute die Erfahrung gemacht, dass ein
convert foo.png foo.eps2 bzw. ein
convert foo.png foo.eps3
wesentliche kleinere Dateien erzeugt. Bei eps ist das Verhältnis
EPS-Größe/PNG-Größe ca. 60:1 bei EPS2 ist es 4:1 und bei EPS3 ist es
2:1. Bei EPS2 hat convert das teilweise leider nicht richtig umgewandelt
(Grafiken verschoben). Bei EPS3 ging es. So kann ich also weiterhin gut
mit der DVI-Datei arbeiten. Wenn ich für alle Grafiken EPS3 statt EPS
verwende, verringert sich die größe meiner PS-Datei von 21MB auf 630KB.
Mit der entstehenden PS-Datei haben Ghostview/KGhostview leider
Probleme. Da ich meine Endfassung mit pdflatex erstelle ist das jedoch
nicht problematisch.
Jens
fm sam schrieb:
> Dafür langt der Acrobat Reader nicht. Dazu brauchst du den kompletten
> Acrobat. Wie es sonst gehen könnte hab ich leider auch keine Ahnung :(
Es gibt noch den günstigen JAWS PDF-Editor (nur für Windows), der sowas
auch können sollte.
V-Li
--
PGP/GnuPG signierte/codierte Mails erwünscht
Fingerprint: 68C5 D381 B69A A777 6A91 E999 350A AD7C 2B85 9DE3
http://www.gnupg.org