这是一个后续问题:latex - 标题中的颜色框作为图例 - 如何居中或采用替代解决方案?
为了方便起见,我复制了 MWE:
\documentclass{article}
\usepackage{graphicx}
\usepackage{xcolor}
\DeclareRobustCommand{\legendsquare}[1]{%
\textcolor{#1}{\rule{1ex}{1ex}}%
}
\begin{document}
\begin{figure}[hbp]
\centering
\includegraphics[width=.4\textwidth]{example-image}
\caption{Pattern of participants \legendsquare{green}~X,
\legendsquare{orange}~Y,
\legendsquare{black}~Z after}
\label{fig:cha_HAC_RunningTime}
\end{figure}
\end{document}
彩色图例现在显示在标题中。方框填充了绿色、橙色和黑色。
问题:如何在彩色框中放置一些图案,例如对角线图案、点状图案等?
答案1
您可以用 TikZ 替换您的命令。如果您想保持命令定义简单,着色命令会变得稍微复杂一些。
您可以draw
在正方形中添加带有图案的东西来显示正方形的外观。
输出
代码
\documentclass{article}
\usepackage{graphicx}
\usepackage{tikz}
\usetikzlibrary{patterns}
\DeclareRobustCommand{\legendsquare}[1]{%
\tikz[baseline=(a.south)]{\node[#1, inner sep=.8ex, outer sep=0] (a) {};}%
}
\begin{document}
\begin{figure}[!htb]
\centering
\includegraphics[width=.4\textwidth]{example-image}
\caption{Pattern of participants \legendsquare{fill=green}~X,
\legendsquare{pattern=north west lines}~J,
\legendsquare{pattern=dots}~W,
\legendsquare{fill=orange}~Y,
\legendsquare{fill=black}~Z after}
\label{fig:cha_HAC_RunningTime}
\end{figure}
\end{document}