TikZ 矩形分割并改变对齐方式

TikZ 矩形分割并改变对齐方式

我尝试使用 绘制 tikz 节点rectangle split。我希望第一部分居中,第二部分左对齐。这是我尝试过的:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning,shapes}

\begin{document}
  \tikzstyle{box}=[rectangle, draw=black, text width=3cm,
                   rectangle split, rectangle split parts=2]
  \begin{tikzpicture}
    \node (A) [box] {
      First
      \nodepart{second}Second
    };
    \node (B) [below=of A, box] {
      \begin{center}First\end{center}
      \nodepart{second}Second
    };
    \node (C) [below=of B, box, align=center] {
      First
      \nodepart{second}\flushleft Second
    };
  \end{tikzpicture}
\end{document}

A具有正确的尺寸,但所有内容都是左对齐。

B具有正确的对齐,但是第一部分比它需要的要大。

C也有正确的对齐,但是第二部分比需要的要大。

如何正确地做到这一点?

答案1

您可以使用可选参数nodepart

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes}
\begin{document}
  \tikzstyle{box}=[rectangle, draw=black, text width=3cm,
                   rectangle split, rectangle split parts=2]
  \begin{tikzpicture}
    \node[align=center] (A) [box] {
      First
      \nodepart[align=left]{second}Second
    };
  \end{tikzpicture}
\end{document}

结果是

在此处输入图片描述

答案2

text width似乎是问题所在。试试这个:

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{positioning,shapes}

\tikzset{%
    box/.style={draw,minimum width=3cm,
                   rectangle split, 
                   rectangle split parts=2,
                   rectangle split part align={center,left}
    }%
}

\begin{document}

  \begin{tikzpicture}
    \node (A) [box] {
      First
      \nodepart{second}Second
    };
    \end{tikzpicture}

\end{document}

相关内容