Wie skaliert man PNG nicht?

Tabellen und Grafiken erstellen und anordnen


magoo
Forum-Newbie
Forum-Newbie
Beiträge: 8
Registriert: Do 7. Mai 2009, 20:16

Wie skaliert man PNG nicht?

Beitrag von magoo »

Hi Leute,

ich bin ein LaTeX Neuling, und bastel mir gerade meine Vorlagen.

Ich will auf die hyperref Features nicht verzichten, bin also pdflatex-seitig auf PNG (oder JPG) Grafiken angewiesen. Soweit richtig?

Da ich bisher viel im Web gearbeitet habe mach ich PNG recht gern, bekomme es nur nicht hin dass die Grafik _nicht_ skaliert wird.
Wie bekomme ich die gestochen scharfe Qualität des PNG Bildes in mein PDF?
Kind regards
magoo

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Wenn man keine Option oder Anweisung angibt, um eine Abbildung zu skalieren, dann wird die auch nicht skaliert. Dabei ist es völlig egal, in welchem Format die Abbildung vorliegt. Normalerweise werden jpg und png von halbwegs aktuellen pdfTeX-Versionen auch nicht rekomprimiert. Die Frage ist also eher, was Du genau machst, was dabei passiert, Dir aber nicht gefällt.

Ansonsten sei auf die Anleitung zum graphicx-Paket, dem grfguide, verwiesen. Dort steht auch drin, wie man Abbildungen skaliert. Für diejenigen, die es genau wissen wollen sei ebenso auf die Anleitung zu pdfTeX, pdftex-a, verwiesen. Dort steht diverses über Komprimierung und die native, von graphicx genutzte Behandlung von Abbildungen drin.

Übrigens hat hyperref genau gar nichts mit der Frage zu tun, ob Du PNG und JPG verwenden musst. hyperref kennt - wie graphics/graphicx auch - eine ganze Reihe von Ausgabetreibern.

Insgesamt erscheint mir Deine ganze Frage sehr undurchsichtig. Eventuell liegt das an den vielen aufgeführten falschen Voraussetzungen. Es wäre deshalb wirklich von Vorteil, die realen Voraussetzungen zu kennen, um dann auch die richtigen Schlüsse ziehen zu können. Eventuell hast Du ja nur ein Problem mit einem PDF-Viewer oder dessen Einstellung.

magoo
Forum-Newbie
Forum-Newbie
Beiträge: 8
Registriert: Do 7. Mai 2009, 20:16

Beitrag von magoo »

Danke erstmal für die Antwort. Entschuldige bitte das Fehlen des Minimalbeispiels.

Mit folgendem LaTeX:
\documentclass[12pt,a4paper,german]{article}

\usepackage[ngerman]{babel}
\usepackage[latin1]{inputenc}

\usepackage{graphicx}

\begin{document}

\begin{figure}[!h]
	\begin{center}
	\label{fig:label}
		\includegraphics{image}
	\end{center}
	\caption{Caption}
\end{figure}

\end{document}}
Wird bei mir aus dem angehängten image.png das unscharfe Bild in Dokument.pdf. Kann man hier etwas machen um die Qualität zu verbessern?
Dateianhänge
image.png
image.png (3.89 KiB) 2583 mal betrachtet
Dokument.pdf
(9.71 KiB) 832-mal heruntergeladen
Kind regards
magoo

Benutzeravatar
KOMA
TeX-Entwickler
TeX-Entwickler
Beiträge: 2958
Registriert: Fr 4. Jul 2008, 17:28
Kontaktdaten:

Beitrag von KOMA »

Du hast ein Problem mit Deinem PDF-Viewer. Wenn ich die Ansicht in kpdf auf 100% einstelle, dann ist die Abbildung im PDF genauso scharf wie die PNG-Datei selbst im Bildbetrachter mit 100%. Im Adobe Reader ist die Schrift in der Abbildung ein ganz klein wenig schwammig, was vermutlich daran liegt, dass der selbst bei 100% in Wirklichkeit skaliert und in den prefs Antialias-Optionen aktiviert sind. Der Ausdruck (natürlich ohne irgendwelche fit-to-paper-Einstellungen) ist scharf.

Übrigens solltest Du nicht center in Gleitumgebungen verwenden. Da ich die Gründe diese Woche schon erklärt habe, sei hier nur auf l2tabu (Link im Dokument aus der zweiten Zeile meiner Signatur) verwiesen.

phi
Moderator
Moderator
Beiträge: 420
Registriert: Fr 6. Feb 2009, 21:28

Re: Wie skaliert man PNG nicht?

Beitrag von phi »

magoo hat geschrieben:Ich will auf die hyperref Features nicht verzichten, bin also pdflatex-seitig auf PNG (oder JPG) Grafiken angewiesen. Soweit richtig?
Nein und nein. Hyperref kann auch andere Ausgabetreiber wie dvips oder dvipdfm verwenden; pdfTeX kann auch PDF-Grafiken einbinden, was in der Regel sogar das Optimum darstellt.
magoo hat geschrieben:Da ich bisher viel im Web gearbeitet habe mach ich PNG recht gern, bekomme es nur nicht hin dass die Grafik _nicht_ skaliert wird.
Wie bekomme ich die gestochen scharfe Qualität des PNG Bildes in mein PDF?
Das ist prinzipiell unmöglich. PDF ist aus den Druck optimiertes Vektorformat, PNG hingegen ein auf Bildschirmdarstellung optimiertes Rasterformat. „Scharfe“ Darstellung von Rastergrafiken bedeutet in der Regel, dass jeder Pixel der Grafik auf genau einen Bildpunkt des Monitors abgebildet wird. Würde man dasselbe bei Druckern versuchen, wären die Bilder erstens winzig (Drucker haben eine deutlich höhere Auflösung als Monitore), zweitens wären sie auf jedem Drucker unterschiedlich groß. Wenn du deshalb scharfe Bilder gedruckt haben möchtest, musst du ein Vektorformat (in diesem Fall PDF) für die Bilder benutzen.

skater
Forum-Guru
Forum-Guru
Beiträge: 356
Registriert: Do 12. Mär 2009, 14:34
Wohnort: Berlin

Re: Wie skaliert man PNG nicht?

Beitrag von skater »

phi hat geschrieben:
magoo hat geschrieben:Wie bekomme ich die gestochen scharfe Qualität des PNG Bildes in mein PDF?
PDF ist aus den Druck optimiertes Vektorformat, PNG hingegen ein auf Bildschirmdarstellung optimiertes Rasterformat. „Scharfe“ Darstellung von Rastergrafiken bedeutet in der Regel, dass jeder Pixel der Grafik auf genau einen Bildpunkt des Monitors abgebildet wird. …
Dein PNG hat eine Auflösung von 302 × 94 Pixel, das PDF soll haben (vermutlich) 297 × 210 Millimeter. Wie groß soll denn da dann bitte schön das Bild auf dem Blatt werden – nicht skaliert?

Bei meinem Laser-Drucker mit 1200 DPI komme ich dann (nicht skaliert) auf 6,39 × 1,99 Millimeter.

Allerdings kann und kennt mein Laser pro Punkt nur Schwarz oder Weiß. Dein PNG aber ist mit vielen Farben gesegnet. Es müsste ergo gerastert werden. Stelle ich dazu 150 DPI ein, dann hat das PNG auf dem Blatt 51,14 × 15,92 Millimeter.

Also, Deine Fragestellung ist ein Vergleich zwischen Äpfel und Birnen.


ps:
Ist in dem PNG keine Druckauflösung angegeben, dann wird ein Wert von 72 DPI verwendet. Ändern kann man das mit:
\pdfimageresolution150

Antworten