以下代码使用 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}