我尝试使用 \newcommand 多次重现 tikz 图表。当我手动制作这些图表时,它们绘制得恰到好处,但当我使用 \newcommand 重现它们时,它们会稍微偏向右侧。我尝试在 tikzpicture 末尾使用 \% 删除空格,但这对我来说不起作用。这是 MWE:
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[left=2cm, right=5cm, top=2cm]{geometry}
\usepackage{tikz}
\usetikzlibrary{positioning,fit}
\newcommand{\tklines}[1]
{
\begin{tikzpicture}[red,overlay]
\draw (0,#1)--++(5,0);
\end{tikzpicture}%
}
\begin{document}
\begin{tikzpicture}[overlay]
\draw (0,0)--++(5,0);
\end{tikzpicture}%
\begin{tikzpicture}[overlay]
\draw (0,1)--++(5,0);
\end{tikzpicture}%
\begin{tikzpicture}[overlay]
\draw (0,2)--++(5,0);
\end{tikzpicture}
\hspace{5cm}
\tklines{0}
\tklines{1}
\tklines{2}
\end{document}
答案1
%
正如大卫卡莱尔所说,只缺少几个,一个在命令定义中,在 之前\begin{tikzpicture}
,以及一个在 每次调用 之后\tklines{X}
。
\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[left=2cm, right=5cm, top=2cm]{geometry}
\usepackage{tikz}
\usetikzlibrary{positioning,fit}
\newcommand{\tklines}[1]{% <-[ HERE ]
\begin{tikzpicture}[red,overlay]
\draw (0,#1)--++(5,0);
\end{tikzpicture}%
}
\begin{document}
\begin{tikzpicture}[overlay]
\draw (0,0)--++(5,0);
\end{tikzpicture}%
\begin{tikzpicture}[overlay]
\draw (0,1)--++(5,0);
\end{tikzpicture}%
\begin{tikzpicture}[overlay]
\draw (0,2)--++(5,0);
\end{tikzpicture}
%
\hspace{5cm}
%
\tklines{0}% <-[ HERE ]
\tklines{1}% <-[ HERE ]
\tklines{2}
\end{document}