Anti-Aliasing in ps2pdf deaktivieren

Anti-Aliasing in ps2pdf deaktivieren

Die EPS-Dateien habe ich selbst erzeugt. In den EPS-Dateien habe ich die \interpolate falseOption gesetzt. Ich binde sie in den LaTeX-Quellcode mit includegraphicsTikZ ein (weil ich mehrere davon schön nah beieinander haben möchte).

Dann führe ich die Standardschritte aus:

latex src.tex
dvips -Ppdf src.dvi
ps2pdf src.ps

In einem Texteditor sehe ich, dass die PostScript-Quelldatei den vollständigen Text der EPS-Datei beibehalten hat. Sogar meine Kommentare darin (wie es sein sollte). Die \interpolate falseZeile ist also auch geblieben. Wenn ich die PostScript-Quelle mit Evince (dem GNOME-PDF-Viewer) öffne, gibt es tatsächlich keine Interpolation. Nur zur Kontrolle habe ich mit dem Editor \interpolate truedie PostScript-Datei eingerichtet und erneut geöffnet und bestätigt, dass Evince jetzt tatsächlich das Bild interpoliert. Dies zeigt, dass Evince zumindest diese Option versteht.

Aber wenn ich die Datei öffne, src.pdfdie von ps2pdf ausgegeben wurde, sehe ich, dass die Ausgabe auf jeden Fall interpoliert (geglättet) ist! Ich habe die PDF-Datei auch mit einem Texteditor geöffnet und festgestellt, dass nur die grundlegendsten Parameter des EPS-Bildes übrig geblieben sind (wie Breite oder Höhe). \interpolate falseentfernt worden waren.

Aus den obigen Ergebnissen erkenne ich, dass das Problem nicht bei includegraphicseinem der LaTeX-Schritte oder gar meinem PDF-Viewer liegt. Es liegt bei ps2pdf.

In seinemDokumentation, es scheint AntiAliasColorImages, AntiAliasGrayImagesund zu haben AntiAliasMonoImages, aber im Folgenden heißt es:

(note 0) This parameter can be set and queried, but currently has no effect. 

Wenn ich also den folgenden Befehl ausführe, gibt es keinen Unterschied:

ps2pdf -dAntiAliasGrayImages=false -dAntiAliasMonoImages=false src.ps

Ich wollte sehen, ob ich das Problem irgendwie lösen kann. Für mich ist es sehr wichtig, dass in der PDF-Datei kein Anti-Aliasing auftritt.

Antwort1

Der Standardwert für den Schlüssel /Interpolateim Bildwörterbuch der PDF-Datei ist false, siehePDF-Spezifikation, Abschnitt8.9.5.3 Bildinterpolation. Daher /Interpolate falsemacht das Hinzufügen nur die Standardeinstellung explizit. Wahrscheinlich wird das Antialiasing vom PDF-Viewer durchgeführt und sollte dort deaktiviert werden.

Beachten Sie auch den Hinweis, der der Beschreibung beiliegt /Interpolate:

Ein konformer Reader kann sich dafür entscheiden, diese PDF-Funktion nicht zu implementieren, oder er kann eine beliebige spezifische Interpolationsimplementierung verwenden.

Test von/Interpolate

Der Treiber pdftex.deffür das Paket graphicsunterstützt den booleschen Schlüssel interpolate, der seine Einstellung dem Schlüssel /Interpolateim Bildwörterbuch zuordnet. Der Standardwert (false) und der aktivierte Schlüssel zeigen die erwarteten Ergebnisse mit diesemBildin AR9 oder xpdf 3.03 oder evince 3.4.0:

\documentclass{article}        
\pagestyle{empty}
\usepackage{graphicx}
\begin{document}
\centering
\includegraphics[width=.48\linewidth]{uJ9k7.png}\hfill
\includegraphics[width=.48\linewidth, interpolate]{uJ9k7.png}
\end{document}

Ergebnis

verwandte Informationen