EPS ファイルは自分で生成しました。EPS ファイルではオプションを設定しました\interpolate false
。それらを TikZ 内の LaTeX ソースに含めますincludegraphics
(複数のファイルを互いに近くに配置したいためです)。
次に、標準的な一連の手順を実行します。
latex src.tex
dvips -Ppdf src.dvi
ps2pdf src.ps
テキスト エディターで、PostScript ソース ファイルが EPS ファイル テキスト全体を保存しているのがわかります。コメントも (当然のことですが) そのままです。したがって、行も\interpolate false
そのままです。PostScript ソースを Evince (GNOME pdf ビューアー) で開くと、確かに補間はありません。念のため、エディターで設定し\interpolate true
て PostScript ファイルを再度開き、Evince が確かに画像を補間していることを確認しました。これは、少なくとも Evince がこのオプションを理解していることを示しています。
しかし、ps2pdf から出力されたファイルを開くとsrc.pdf
、出力はいずれにしても補間 (アンチエイリアス) されていることがわかります。また、テキスト エディターで PDF ファイルを開いたところ、EPS イメージの最も基本的なパラメーター (幅や高さなど) のみが残っていることがわかりました。\interpolate false
削除されていました。
上記の結果から、問題はincludegraphics
LaTeX の手順や PDF ビューアにないことがわかります。問題は ps2pdf にあります。
そのドキュメンテーション、および があるように見えますがAntiAliasColorImages
、次の部分では次のように書かれています。AntiAliasGrayImages
AntiAliasMonoImages
(note 0) This parameter can be set and queried, but currently has no effect.
したがって、次のコマンドを実行しても違いはありません。
ps2pdf -dAntiAliasGrayImages=false -dAntiAliasMonoImages=false src.ps
この問題を解決する方法があるかどうか知りたかったのです。PDF ファイルでアンチエイリアシングが発生しないことが私にとって非常に重要です。
答え1
/Interpolate
PDFファイルの画像辞書のキーのデフォルト値は ですfalse
。PDF仕様、 セクション8.9.5.3 画像補間したがって、追加する/Interpolate false
とデフォルトが明示的になります。おそらく、アンチエイリアスは PDF ビューアによって実行されるため、そこでオフにする必要があります。
以下の説明に付属する注記にも注意してください/Interpolate
:
準拠するリーダーは、PDF のこの機能を実装しないことを選択したり、希望する補間の特定の実装を使用したりすることができます。
テストの/Interpolate
pdftex.def
パッケージのドライバはgraphics
ブールキー をサポートしておりinterpolate
、その設定を画像辞書のキーにマッピングします/Interpolate
。デフォルト (false) と有効なキーは、この場合に期待される結果を示します。画像AR9 または xpdf 3.03 または 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}