我正在寻找一种使用包时将黑色改为白色的方法tkz
,我最常用的是tkz-fct
和tkz-euclide
。
有没有办法可以随意改变文本、背景、填充等的颜色?
\documentclass[tikz,border=1cm]{standalone}
\usepackage{tkz-fct}
\usepackage{mismath}
\usepackage{tikz-layers}
\begin{document}
\begin{tikzpicture}
\tkzInit[xmin=-5, xmax=5, ymin=-5, ymax=5]
\tkzDrawX[noticks, label=\(\Re\left(z\right)\),below right,thick]
\tkzDrawY[noticks, label=\(\Im\left(z\right)\),thick]
\tkzDefPoints{0/0/O}\tkzLabelPoints[below left](O)
\begin{scope}[on background layer]
\fill[black,opacity=.2,inner sep=2mm](current bounding box.north west) rectangle (current bounding box.south east);
\end{scope}
\end{tikzpicture}
\end{document}
答案1
我查看了文档并发现其中有tkz-base.cfg
以下几行:
%<------ colors ---------------------------------------–>
\def\tkz@backgroundcolor{white}
\def\tkz@textcolor{black}
%<---------------------------------------------------------
\def\tkz@fillcolor{\tkz@backgroundcolor}
\def\tkz@mainlinecolor{\tkz@textcolor}
\def\tkz@otherlinecolor{\tkz@mainlinecolor!50}
我们可以通过覆盖文档中的定义来更改这些颜色。因为颜色名称包含@
我们需要的符号\makeatletter
和\makeatother
,如下所示:
解决方案 根据 Marijn 的评论
\documentclass[tikz,border=1cm]{standalone}
\usepackage{tkz-fct}
\usepackage{mismath}
\usepackage{tikz-layers}
\makeatletter
\def\tkz@textcolor{white}
\makeatother
\begin{document}
\begin{tikzpicture}
\tkzInit[xmin=-5, xmax=5, ymin=-5, ymax=5]
\tkzDrawX[noticks, label=\(\Re\left(z\right)\),below right,thick]
\tkzDrawY[noticks, label=\(\Im\left(z\right)\),thick]
\tkzDefPoints{0/0/O}\tkzLabelPoints[below left](O)
\begin{scope}[on background layer]
\fill[black,opacity=.2,inner sep=2mm](current bounding box.north west) rectangle (current bounding box.south east);
\end{scope}
\end{tikzpicture}
\end{document}