我正在尝试使用 cbox 并使颜色与插入图形上的颜色相同。我使用 Windows 画图程序打开图形,并使用颜色选择器确定每个条的 rgb 值。但是,在 latex 中使用这些值时,我得到的不是与下面显示的棕色“Approach”条相同的颜色。“Idle”条看起来也更暗。
我该如何解决这个问题?下面是 MWE 以及 png 文件。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{tikz}
\newcommand{\Cbox}[1]{{\color{#1}\rule{2ex}{2ex}}} % added <<<<<<<<<<<
\usepackage{float}
\usepackage{subfig}
\title{test}
\author{test}%
\date{January 2022}
\begin{document}
\maketitle
\begin{figure*}
\centering
\subfloat{
\hspace{0.1cm} Left Hand {\includegraphics[width=0.9\textwidth,height=0.02\textwidth,trim={0 0 0 0},clip]{segmentation-l.png}}}
\subfloat{
Right Hand {\includegraphics[width=0.9\textwidth,height=0.02\textwidth,trim={0 0 0 0},clip]{segmentation-r.png}}}
\caption{\Cbox{rgb:red,0.396;green,0.435;blue,0.498} Idle \Cbox{rgb:red,0.843;green,0.733;blue,0.635} Approach}
\label{fig:qualitative}
\end{figure*}
\end{document}
Png 文件
答案1
您面临的问题是,您使用的扩展颜色表达式rgb:red,0;green,0;blue,0
以非常特殊的方式混合颜色,与更广泛使用的颜色混合机制不同。(请参阅第 16 页第 2.3.3 章“扩展颜色表达式的含义”xcolor
软件包当前版本的文档(v2.14)关于此。)
这个表达式就是将每个给定值除以所有给定值的总和。在示例中,rgb:red,0.396;green,0.435;blue,0.498
每个值将除以 0.396 + 0.435 + 0.498 = 1.329,结果就是颜色 (百分比值范围从 0 到 1)。但这个颜色显然比您想要获得的颜色0.300, 0.327, 0.375
要暗。0.396,0.435,0.498
您可以明确指定使用rgb,1:red,0.396;green,0.435;blue,0.498
哪个除数来产生颜色0.396,0.435,0.498
。
您还可以将宏\definecolor
与rgb
或RGB
模型一起使用,并定义稍后使用的自定义颜色。
\documentclass{article}
\usepackage{graphicx}
\usepackage{xcolor}
\definecolor{mygrayA}{RGB}{101,111,127}
\definecolor{mygrayB}{rgb}{0.396,0.435,0.498}
\begin{document}
\includegraphics{gray-box.png}
\raisebox{2cm}[0pt][0pt]{%
\quad%
\textcolor{rgb:red,0.396;green,0.435;blue,0.498}{\rule{5pt}{4cm}}%
\quad%
%
% 0.396 + 0.435 + 0.498 = 1.329
% -> 0.399 / 1.329 = 0.300
% -> 0.435 / 1.329 = 0.327
% -> 0.498 / 1.329 = 0.375
%
\textcolor{rgb,1:red,0.396;green,0.435;blue,0.498}{\rule{5pt}{4cm}}%
\quad%
\textcolor{mygrayA}{\rule{5pt}{4cm}}%
\quad%
\textcolor{mygrayB}{\rule{5pt}{4cm}}%
}
\end{document}