如何在LaTeX中包含内容,使所有框都在同一行和相同的高度?

时间:2009-11-02 14:35:11

标签: math latex calculator

我需要通过文本表示计算器按键按下按下的按键。我试图通过裸键按下(没有盒子)逃脱,但我被标记为因为它看起来我的评估员有点迂腐。

无论如何,一些研究发现了\ boxit和\ fbox等。

我给了他们两个去但是\ boxit产生了与\ fbox相同的结果。 问题是盒子的高度和基线随着它包含的字形而变化。

采用以下示例来表示按5,乘,x;

\documentclass{article}
\usepackage{fullpage}
\begin{document}
\fbox{5} \fbox{$\times$} \fbox{$x$}
\end{document}

这会在内容周围生成框,但它们位于不同的基线上,并且它们都是不同的高度。

鉴于我到目前为止看到的LaTeX,我认为这绝对是可能的,但CTAN,新闻组和谷歌迄今为止没有任何用处。

任何提示?

3 个答案:

答案 0 :(得分:5)

使用\strut制作相同的高度。

\def\press#1{\fbox{\hbox to 1em{\strut\hfil#1\hfil}}}
\press{5} \press{$\times$} \press{$x$}

或设置盒子的任何高度和深度:

\def\press#1{{\setbox0=\hbox to 1em{\hfil#1\hfil}\ht0=7.5pt \dp0=2.5pt \fbox{\box0}}}
\press{5} \press{$\times$} \press{$x$}

答案 1 :(得分:4)

这看起来与你想要做的很接近。

\framebox[2em][c]{5\strut} 
\framebox[2em][c]{$\times$\strut} 
\framebox[2em][c]{$x$\strut}

您可能需要创建一个新命令来创建密钥,以避免重复自己:

\newcommand{\key}[1]{\framebox[2em][c]{#1\strut}}
\key{5}
\key{$\times$}
\key{$x$}

我确实找到了一个名为keystroke.sty的软件包,但对于您尝试执行的操作可能有点过分。

答案 2 :(得分:1)

我能想出的最好的结果:

\newcommand{\vlen}[1]{\parbox[c][#1]{0cm}{}}
\fbox{\vlen{1cm}5} \fbox{\vlen{1cm}$\times$} \fbox{\vlen{1cm}$x$}

Yegh。