在 TikZ 中正确创建数学符号的框式垂直向量

在 TikZ 中正确创建数学符号的框式垂直向量

我正在尝试在 TikZ 中创建一个垂直的数学符号框向量。我的目标是让所有项都居中(垂直和水平),并让框自动调整大小以适应所需的所有内容sep。我能够使用minipagegather*环境结合来实现这一点,但这似乎有点不方便,因为我必须手动删除顶部的一些额外空间并设置宽度minipage。我想知道是否有一种“适当”或更优雅的方法来实现这个结果。

\documentclass[tikz,dvipsnames]{standalone}
\standaloneconfig{border=1mm}
\usepackage{amsmath}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
    \node[draw=black,fill=white,rounded corners,ultra thick,inner sep=2.5mm] (u) {  
    \begin{minipage}{8mm}
        \centering
        \vspace{-5mm}
        \begin{gather*} 
            u^0 \\ 
            u^1 \\ 
            \vdots \\ 
            u^{N-1} 
        \end{gather*}
    \end{minipage}
    \vspace{-5mm}};

\end{tikzpicture}

\end{document}

答案1

所有 AMS 对齐都具有...ed设置为自然宽度而不是全宽显示的表单,因此您可以避免minipage使用gathered

在此处输入图片描述

\documentclass[tikz,dvipsnames]{standalone}
\standaloneconfig{border=1mm}
\usepackage{amsmath}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
    \node[draw=black,fill=white,rounded corners,ultra thick,inner sep=2.5mm] (u) {%  
       $\begin{gathered} 
            u^0 \\ 
            u^1 \\[-.7em] 
            \vdots \\ 
            u^{N-1} 
        \end{gathered}$%
    };
\end{tikzpicture}

\end{document}

答案2

无需minipagegathercentering。只需将其添加align=center到节点选项中,即可使用 来使用多行内容\\。可以添加可选的垂直间距。

在此处输入图片描述

\documentclass{article}

\usepackage{tikz}

\begin{document}

\begin{tikzpicture}
    \node[draw=black, fill=white, rounded corners, ultra thick, inner sep=2.5mm, align=center] (u) {  
            $u^0$ \\ 
            $u^1$ \\ 
            $\vdots$ \\[.8ex]
            $u^{N-1}$ 
    };
\end{tikzpicture}

\end{document}

相关内容