如何在 tikzpicture 样式中使用 xcolor 颜色名称?

如何在 tikzpicture 样式中使用 xcolor 颜色名称?

我想使用颜色名称,例如MidnightBlue在样式中tikzpicture使用特定颜色来填充,可以吗?还是只能使用其他样式(red!30等等)?

此 MWE 失败,原因如下Package xcolor Error: Undefined color MidnightBlue.

\documentclass[tikz]{standalone}
\PassOptionsToPackage{svgnames}{xcolor}
\usepackage{tikz}

\usetikzlibrary{positioning,fit,calc,shapes}

\begin{document}

\begin{tikzpicture}[myStyle/.style={rectangle, fill=MidnightBlue}]
    \node (test) [myStyle] { Test };         
\end{tikzpicture}
\end{document}

答案1

该包tikz(通过 package 的方式pgfcore)加载该xcolor包。

在你的情况下,standalone带有选项的课程tikz 加载tikz包(并配置其他设置,使其按预期工作)。\usepackage{tikz}不再有效。

因此,你需要说

\PassOptionsToPackage{svgnames}{xcolor}
\documentclass[tikz]{standalone}

或者甚至只是

\documentclass[svgnames,tikz]{standalone}

在你的序言中。

如果没有standalone你可以做

\documentclass{article}% or another that does not load TikZ
\usepackage[svgnames]{xcolor}
\usepackage{tikz}

或者,与 类似standalone

\documentclass[svgnames]{article}
\usepackage{tikz}

beamer课程也存在类似的问题,但是这个问题课程选项xcolor可用于仅将选项转发给xcolor包(xcolor=dvipsnames),而不是所有包。

相关内容