印刷された文書のxcolor

印刷された文書のxcolor

印刷する文書で色を使用する正しい方法は何ですか?

私はいつも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}

関連情報