有人对在纯 TeX 中重新创建 LaTeX 函数有什么建议吗\boxed{...}
?我确信它是amsmath
LaTeX 软件包的一部分。
答案1
\cstok
您可以重复使用在以下位置找到的定义manmac.tex
:
\def\boxed#1{% from \cstok in manmac.tex
\leavevmode\thinspace
\hbox{\vrule\vtop{\vbox{\hrule\kern1pt
\hbox{\thinspace$\displaystyle{#1}$\thinspace}}
\kern1pt\hrule}\vrule}\thinspace}
$$
a = \boxed{1\over2} = {2\over 4} = \boxed{\root3\of{8^{-1}}}
$$
\bye
调整间距以适合您的喜好。
答案2
我已经做Werner
了锻炼. 使用额外的括号以便\over
与 的egreg
答案一起使用。
编辑我第一次使用非零的\mathsurround
。但是子公式(在\hbox
es 中)应该知道并自行设置,因为我认为在 LaTeX/amsmath 中是系统的。
\newdimen\fboxsep \fboxsep3pt
\newdimen\fboxrule \fboxrule.4pt
\newbox\boxedbox
\long\def\boxed #1{\leavevmode
\setbox \boxedbox =
%%\hbox{\kern\fboxsep {\mathsurround0pt $\displaystyle {#1}$}\kern\fboxsep}%
\hbox{{\mathsurround\fboxsep $\displaystyle {#1}$}}%
\dimen0=\fboxrule\advance\dimen0\fboxsep\advance\dimen0\dp\boxedbox
\hbox{\lower \dimen0
\hbox {%
\vbox {\hrule height \fboxrule
\hbox {\vrule width \fboxrule
\vbox {\vskip \fboxsep \box \boxedbox \vskip \fboxsep }%
\vrule width \fboxrule }%
\hrule height \fboxrule }}}}
$$
a = \boxed{1\over2} = {2\over 4} = \boxed{\root3\of{8^{-1}}}
$$
\bye
第二个是输出
\documentclass{article}
\usepackage{amsmath}
\begin{document}\thispagestyle{empty}
$$
a = \boxed{{1\over2}} = {2\over 4} = \boxed{\root3\of{8^{-1}}}
$$
\end{document}