
Qual é a maneira correta de usar cores em um documento para impressão?
Estou sempre simplesmente usando o xcolor
pacote. Considere por exemplo
\documentclass[margin = 12mm]{standalone}
\usepackage{xcolor}
\definecolor{foo}{rgb}{.4, .8, .2}
\begin{document}
Some \textcolor{foo}{example} text.
\color{red}\raisebox{.1em}{\rule{.3em}{.3em}}
\end{document}
Recentemente me deparei com uma postagem do Reddit (https://www.reddit.com/r/LaTeX/comments/d1tw6c/resource_for_best_packages_to_use_or_to_avoid/eztwtms), em que o usuário u/0xe4524ffe comenta:
Evite pacotes coloridos e xcolor, eles bagunçam as cores cmyk, fazem o texto ser impresso com tinta colorida em vez de apenas preto (eles colocam uma quantidade absurda de "0 0 0 rg" repetidos em vez de um "0 g" no fluxo de pdf).
Meu local xcolor.sty
(11/05/2016 v2.12) termina com
1456 ...
1457 \color{black}
1458 \endinput
E a cor black
está de acordo
\extractcolorspecs{black}{\model}{\black}\black
definido como um espaço de cores cinza simples 0
.
Como não há uma solução real fornecida na postagem do Reddit sobre como usar corretamente as avaliações color e xcolor black
(portanto, tudo sem conjunto de cores) para 0
, minha pergunta é
Esta resposta ainda está atualizada e, em caso afirmativo, como usar as cores corretamente?
Responder1
Tudo depende do modelo de cores que você deseja usar. O padrão é RGB, então preto é 0 0 0
. Você pode carregar o pacote com a opção cmyk
e tudo ficará definido em cmyk. Ou redefina as cores em outro modelo, por exemplo:
\pdfcompresslevel=0
\documentclass{article}
\usepackage{xcolor}
\definecolor{black}{gray}{0}
\begin{document}
\textcolor{black}{foo}
\definecolor{black}{rgb}{0,0,0}
\textcolor{black}{foo}
\definecolor{black}{cmyk}{0,0,0,1}
\textcolor{black}{foo}
\end{document}
o PDF então se parece com:
stream
0 g 0 G
0 g 0 G
0 g 0 G
0 g 0 G
BT
/F8 9.9626 Tf 148.712 657.235 Td [(fo)-28(o)]TJ
0 g 0 G
0 0 0 rg 0 0 0 RG
0 -11.955 Td [(fo)-28(o)]TJ
0 g 0 G
0 0 0 1 k 0 0 0 1 K
0 -11.955 Td [(fo)-28(o)]TJ
0 g 0 G
0 g 0 G
154.421 -543.96 Td [(1)]TJ
0 g 0 G
ET
endstream
você também pode definir o modelo para um único uso, por \textcolor
exemplo:
\textcolor[gray]{0}{foo}