我正在尝试做类似下面的 MWE 的事情:
\documentclass{article}
\usepackage{lipsum}
\newenvironment{myenv}{%
\parshape = 4
0pt 0.5\textwidth
0pt 0.5\textwidth
0pt 0.5\textwidth
0pt \textwidth
}{}
\begin{document}
\begin{myenv}
\end{myenv}%
\lipsum[1]
\end{document}
我需要环境\parshape
中声明的内容myenv
应用于myenv
环境后面的下一段。但显然它现在无法做到这一点。有什么办法可以让它工作吗?
答案1
请始终发布完整的文档而不仅仅是片段。
在 LaTeX 中设置注释\parshape
几乎总是错误的,除非非常小心(几乎所有的 LaTeX 构造都使用\list
严重依赖于\parshape
不被干扰的机制)。
然而
\documentclass{article}
\usepackage{lipsum}
\newenvironment{myenv}{%
\gdef\foo{\parshape = 4
0pt 0.5\textwidth
0pt 0.5\textwidth
0pt 0.5\textwidth
0pt \textwidth}\aftergroup\foo
}{}
\begin{document}
\begin{myenv}
\end{myenv}%
\lipsum[1]
\end{document}