
印刷する文書で色を使用する正しい方法は何ですか?
私はいつもxcolor
パッケージを単純に使用しています。例えば
\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}
最近、Redditの投稿に出会いました(https://www.reddit.com/r/LaTeX/comments/d1tw6c/resource_for_best_packages_to_use_or_to_avoid/eztwtms)、ユーザー u/0xe4524ffe は次のようにコメントしています。
color および xcolor パッケージは使用しないでください。cmyk カラーが台無しになり、テキストが黒ではなくカラー インクで印刷されます (pdf ストリームに 1 つの「0 g」ではなく、大量の「0 0 0 rg」が繰り返されます)。
私のローカルxcolor.sty
(2016/05/11 v2.12)は
1456 ...
1457 \color{black}
1458 \endinput
そして色black
は
\extractcolorspecs{black}{\model}{\black}\black
単純なグレーのカラースペースとして定義されます0
。
Redditの投稿には、colorを正しく使用する方法に関する実際の解決策は示されておらず、xcolorはblack
(つまり、colorが設定されていないものはすべて)に評価されるため0
、私の質問は次のとおりです。
この回答はまだ最新のものですか? もしそうなら、色を正しく使用するにはどうすればいいですか?
答え1
すべては、使用するカラー モデルによって異なります。デフォルトは rgb なので、黒は です0 0 0
。オプションを使用してパッケージをロードするcmyk
と、すべてが cmyk で定義されます。または、別のモデルで色を再定義します。例:
\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}
PDF は次のようになります。
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
たとえば、単一の使用のためにモデルを定義することもできます\textcolor
。
\textcolor[gray]{0}{foo}