Eu mesmo gerei os arquivos EPS. Nos arquivos EPS, configurei a \interpolate false
opção. Eu os incluo na fonte LaTeX includegraphics
dentro do TikZ (porque quero vários deles posicionados bem próximos uns dos outros).
Em seguida, executo o conjunto padrão de etapas:
latex src.tex
dvips -Ppdf src.dvi
ps2pdf src.ps
Em um editor de texto, vejo que o arquivo de origem PostScript preservou o texto completo do arquivo EPS. Até meus comentários (como deveria). Então a \interpolate false
linha também permaneceu. Quando abro a fonte PostScript com o Evince (o visualizador de PDF do GNOME), na verdade não há interpolação. Só para verificar, com o editor configurei \interpolate true
e reabri o arquivo PostScript e confirmei que de fato agora o Evince interpola a imagem. Isso mostra que pelo menos Evince entende essa opção.
Mas quando abro o src.pdf
arquivo gerado em ps2pdf. Vejo que a saída é interpolada (suavização de serrilhado) de qualquer maneira! Também abri o arquivo PDF com um editor de texto e descobri que apenas os parâmetros mais básicos da imagem EPS permaneceram (como largura ou altura). \interpolate false
havia sido removido.
Pelos resultados acima, vejo que o problema não está em includegraphics
nenhuma das etapas do LaTeX ou mesmo no meu visualizador de PDF. Está em ps2pdf.
Em seudocumentação, parece ter AntiAliasColorImages
, AntiAliasGrayImages
e AntiAliasMonoImages
, mas a seguir diz:
(note 0) This parameter can be set and queried, but currently has no effect.
Então, quando executo o seguinte comando, não há diferença:
ps2pdf -dAntiAliasGrayImages=false -dAntiAliasMonoImages=false src.ps
Queria ver se há alguma maneira de resolver o problema. É muito importante para mim que o anti-aliasing não ocorra no arquivo PDF.
Responder1
O valor padrão para a chave /Interpolate
no dicionário de imagens do arquivo PDF é false
, consulteEspecificação PDF, seção8.9.5.3 Interpolação de imagens. Portanto, adicionar /Interpolate false
apenas torna o padrão explícito. Provavelmente, o anti-aliasing é feito pelo visualizador de PDF e deve ser desligado lá.
Observe também a nota que acompanha a descrição de /Interpolate
:
Um leitor em conformidade pode optar por não implementar este recurso do PDF ou pode usar qualquer implementação específica de interpolação que desejar.
Teste de/Interpolate
O driver pdftex.def
do pacote graphics
suporta a chave booleana interpolate
, que mapeia sua configuração para a chave /Interpolate
no dicionário de imagens. O padrão (falso) e a chave habilitada mostram os resultados esperados com esteimagemem AR9 ou xpdf 3.03 ou 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}