答案1
\shortstack
确实不适合均匀堆叠字符,因为它只考虑字符的高度和深度,在它们之间仅添加 3pt。
查看结果
\documentclass{article}
\begin{document}
\shortstack{a\\c\\e}
\shortstack{g\\y\\q}
\shortstack{fg\\ly\\pt}
\shortstack{l\\a\\f}
\end{document}
结果肯定不是您所期望的。该命令仅在其参数仅由大写字母(无变音符号)组成时才有用。
\documentclass{article}
\newcommand{\bettershortstack}[2][c]{%
\begin{tabular}[b]{@{}#1@{}}#2\end{tabular}%
}
\begin{document}
\bettershortstack{a\\c\\e}
\bettershortstack{g\\y\\q}
\bettershortstack{fg\\ly\\pt}
\bettershortstack{l\\a\\f}
\end{document}
现在你的例子:
\documentclass{article}
\newcommand{\bettershortstack}[2][c]{%
\begin{tabular}[b]{@{}#1@{}}#2\end{tabular}%
}
\begin{document}
\bettershortstack{hoge \\ foo \\ bar}
\bettershortstack{hoge \\ \\ bar}
\end{document}