parbox 垂直对齐

parbox 垂直对齐

以下代码使用 parboxes 和 hrules 垂直对齐两个不同高度的矩形。hrule 对我来说有点不合时宜。有没有更优雅的解决方案?

\documentclass{article}
\begin{document}
\begin{minipage}[t]{4in}   
\parbox[t]{2cm}{\hrule height 0pt width 0pt \rule{1cm}{1cm}} 
\parbox[t]{2cm}{\hrule height 0pt width 0pt \rule{1cm}{3cm}}
\end{minipage}
\end{document}  

抱歉。我试图简化问题,但只是把它弄混了。真正的问题是两个图形的垂直对齐,每个图形都是在不同的 Tikz 环境中创建的。我希望 y 的高度相同,但我想在 tikz 之外实现这一点。

\documentclass{article} 
\usepackage{tikz} 
\begin{document} 

\begin{tikzpicture} 
\draw (0,0)--(0,1) node[above]{$y$};  
\end{tikzpicture} 

\begin{tikzpicture}
\draw (0,0)--(0,3) node[above]{$y$};
\end{tikzpicture}

\end{document}

答案1

在此处输入图片描述

\documentclass{article}
\begin{document}

\begin{minipage}[t]{4in}   
\parbox[t]{2cm}{\rule[-1cm]{1cm}{1cm}} 
\parbox[t]{2cm}{\rule[-3cm]{1cm}{3cm}}
\end{minipage}

or simpler

\begin{minipage}[t]{4in}   
\rule[-1cm]{1cm}{1cm}\hspace{1cm}%
\rule[-3cm]{1cm}{3cm}
\end{minipage}



\end{document}

答案2

只需命名两个节点:

\documentclass{article}
\usepackage{tikz}
\begin{document}

\begin{tikzpicture}[baseline=(T1.base)]
\draw (0,0)--(0,1) node[above](T1){$y$};
\end{tikzpicture}
\begin{tikzpicture}[baseline=(T2.base)]
\draw (0,0)--(0,3) node[above](T2){$y$};
\end{tikzpicture}

\end{document}

在此处输入图片描述

答案3

\documentclass{article} 
\usepackage{tikz} 
\usepackage{stackengine}
\begin{document} 

\belowbaseline[0pt]{%
\begin{tikzpicture} 
\draw (0,0)--(0,1) node[above]{$y$};  
\end{tikzpicture} 
}
\belowbaseline[0pt]{%
\begin{tikzpicture}
\draw (0,0)--(0,3) node[above]{$y$};
\end{tikzpicture}
}
\end{document}

在此处输入图片描述

相关内容