我独立绘制和编译 tikz 图片:
\documentclass[tikz]{standalone}
\begin{tikzpicture}
\draw [<->,thick]
(0,5) node (yaxis) [left] {$Y$}
|-
(5,0) node (xaxis) [below] {$X$};
\draw[blue,thick] (0,0) -- (4,4);
\end{tikzpicture}
\end{document}
然后将 pdf 包含在具有通常的白色背景的 beamer 演示文稿中:
\documentclass{beamer}
\begin{document}
\begin{frame}
\includegraphics{tikz_pic.pdf}
\end{frame}
\end{document}
并且工作正常:
但是如果我将幻灯片背景更改为黑色(通过\setbeamercolor{normal text}{fg=white, bg=black}
),它也会反转 tikz 图片:
如何在更改幻灯片颜色时保留 tikz 图片中的颜色?
请注意如果你将 tikz 代码输入到 beamer 中,也会发生同样的事情:
\documentclass{beamer}
\begin{document}
\begin{frame}
\begin{tikzpicture}
\draw [<->,thick]
(0,5) node (yaxis) [left] {$Y$}
|-
(5,0) node (xaxis) [below] {$X$};
\draw[blue,thick] (0,0) -- (4,4);
\end{tikzpicture}
\end{frame}
\end{document}
编辑
我知道你可以添加[background rectangle/.style={fill=white}, show background rectangle]
到 tikz 图片调用中并明确将线条颜色设为黑色:
\begin{tikzpicture}[background rectangle/.style={fill=white}, show background rectangle]
\draw [<->,thick,black]
(0,5) node (yaxis) [left] {$Y$}
|-
(5,0) node (xaxis) [below] {$X$};
\draw[blue,thick] (0,0) -- (4,4);
\end{tikzpicture}
但这也不起作用:
请注意,如果您直接将 tikz 代码输入框架中,这将起作用,但当您有许多图片时,这会非常麻烦,因为它需要完全重写幻灯片。
奇怪的是,即使轴明确地画成黑色,它们也会继承投影仪文本的颜色(白色)。但是,如果你用任何其他颜色(例如灰色)绘制轴,它们不会继承幻灯片文本的颜色。
答案1
我将我的评论转化为答案。
您的图像是透明的。您可以在背景中填充一个矩形,例如通过使用backgrounds
库并添加样式[background rectangle/.style= {fill=white},show background rectangle]
。
并且您的第一个绘图命令使用默认颜色(通常为黑色),您可以输入\draw [black,<->,thick] ...
。
图片 (tikz_pic.tex
):
\documentclass[tikz]{standalone}
\usetikzlibrary{backgrounds}
\begin{document}
\begin{tikzpicture}[background rectangle/.style={fill=white}, show background rectangle]
\draw [<->,thick,black]
(0,5) node (yaxis) [left] {$Y$} |- (5,0) node (xaxis) [below] {$X$};
\draw[blue,thick] (0,0) -- (4,4);
\end{tikzpicture}
\end{document}
Beamer 文件保持不变:
\documentclass{beamer}
\setbeamercolor{normal text}{fg=white, bg=black}
\begin{document}
\begin{frame}
\includegraphics{tikz_pic.pdf}
\end{frame}
\end{document}
答案2
您可以明确使用黑色作为颜色:
\documentclass{beamer}
\usepackage{tikz}
\setbeamercolor{normal text}{fg=white, bg=black}
\begin{document}
\begin{frame}
\textcolor{black}{
\begin{tikzpicture}
\draw [<->,thick]
(0,5) node (yaxis) [left] {$Y$}
|-
(5,0) node (xaxis) [below] {$X$};
\draw[blue,thick] (0,0) -- (4,4);
\end{tikzpicture}
}
\end{frame}
\end{document}
当然,您不会在黑色背景上看到黑轴,但您希望它们是黑色的......