如果字体大小为 \footnotesize,则 \baselineskip 的大小为 \\?

如果字体大小为 \footnotesize,则 \baselineskip 的大小为 \\?
\documentclass{article}
\usepackage[english]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\usetikzlibrary{positioning}

\begin{document}
\begin{tikzpicture}
\tikzstyle{every node}=[font=\footnotesize]

\node[anchor=north west, inner sep=0, rectangle, red, draw, minimum width=0.5cm](A) {%
\begin{minipage}[t]{0.5cm}%
x\\
x
\end{minipage}};

\node[inner sep=0, rectangle, blue, draw, minimum width=0.5cm, anchor=north west](B) at (0.5cm, -\baselineskip) {%
\begin{minipage}[t]{0.5cm}%
x\\
x
\end{minipage}};

\end{tikzpicture}
\end{document}

在此处输入图片描述

我怎样才能对齐这两个矩形,看起来像......

在此处输入图片描述

如果注释掉 \tikzstyle{every node}=[font=\footnotesize],则会出现此结果。问题是我需要较小的字体大小。我尝试将移位设置为 -\footnotesep,但没有成功。

答案1

如果你可以使用TiKZ v 3.0.0,它引入了一个node名为的新选项node font,用于计算节点的所有维度,而font选项只影响节点内的文本,而不影响其维度。

通过这个版本可以轻松获得你想要的东西:

\documentclass{article}
\usepackage[english]{babel}
\usepackage[latin1]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{tikz}
\usetikzlibrary{positioning}

\begin{document}

\verb+node font=\footnotesize+

\begin{tikzpicture}[every node/.style={node font=\footnotesize}]
    \node[anchor=north west, inner sep=0, rectangle, red, draw, 
          text width=0.5cm, align=left](A) {%
          x\\
          x
    };
    \node[inner sep=0, rectangle, blue, draw, 
          text width=0.5cm, align=left, anchor=north west](B) 
          at (0.5cm, -\baselineskip) {%
          x\\
          x
    };
\end{tikzpicture}

\verb+font=\footnotesize+

\begin{tikzpicture}[every node/.style={font=\footnotesize}]
    \node[anchor=north west, inner sep=0, rectangle, red, draw, 
          text width=0.5cm, align=left](A) {%
          x\\
          x
    };
    \node[inner sep=0, rectangle, blue, draw, 
          text width=0.5cm, align=left, anchor=north west](B) 
          at (0.5cm, -\baselineskip) {%
          x\\
          x
    };
\end{tikzpicture}
\end{document}

在此处输入图片描述

我还对您的代码做了一些更改:

  1. 用来/.style代替tikzstyle。请查看应该使用 \tikzset 还是 \tikzstyle 来定义 TikZ 样式?
  2. 删除minipages内部节点。文本节点类似于minipage,您需要修复text width和一些align选项才能使用\\内部节点换行。

相关内容