我想定义一个环境来格式化测试方向。所以我这样做:
\documentclass{minimal}
\usepackage{lipsum}
\newenvironment{directions}
{
\noindent \fbox{
\begin{minipage}[t]{\textwidth}
}
{
\end{minipage}
}
}
\begin{document}
\begin{directions}
\lipsum[1]
\end{directions}
\end{document}
该环境中的文本未出现在编译后的文档中,并且我收到错误forgotten \endgroup
(也是extra } inserted
错误)。我很确定我已经关闭了所有括号;我哪里出错了?
答案1
你的\framebox
没有正确关闭。在新环境的第一部分你应该收集一些新环境的内容\savebox
然后在第二部分里面使用它\framebox
。看下面的例子:
\documentclass{minimal}
\usepackage{lipsum}
\newsavebox\directbox
\newenvironment{directions}
{
\begin{lrbox}{\directbox}
\begin{minipage}{\linewidth}
}{
\end{minipage}\end{lrbox}
\framebox{\usebox\directbox}
}
\begin{document}
\begin{directions}
\lipsum[1]
\end{directions}
\end{document}