我想单独更改以下矩阵中不同列的宽度:
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}[font=\small]
\matrix[column sep=4ex,fill=none] {
\draw(0,0)--(1,1); & \draw(0,0)--(1,1); & \draw(0,1)--(1,0); & \draw(0,0)--(1,1); \\
};
\end{tikzpicture}
\end{document}
@{}
基本上我想要的是与数组中使用的运算符等效的东西。我尝试了许多选项:@{}
、、、和其他,但都没有用minimum width
。minimum size
inner sep
答案1
[]
您需要的是在后面添加一个&
:
\documentclass{standalone}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\matrix[column sep=4ex,fill=none] {
\draw(0,0)--(1,1); &[4ex] \draw(0,0)--(1,1); &[-4ex] \draw(0,1)--(1,0); &[0ex] \draw(0,0)--(1,1); \\
};
\end{tikzpicture}
\end{document}
它的工作方式与@{}
运算符略有不同,因为括号内指定的长度不会替换,而是添加到您用 指定的宽度中column sep
。因此,如果column sep=4ex
,则后面&[4ex]
将是8ex
。&[0ex]
将保持宽度不变。这在手册的第 17.3.2 节中有记录