下面是显示该问题的 MWE:
\documentclass{article}
\usepackage{framed}
\setlength{\FrameSep}{3pt}
\setlength{\parindent}{0pt}
\begin{document}
\fbox{Foo}
\fbox{Foo}
\begin{framed}
Foo
\end{framed}
\begin{framed}
Foo
\end{framed}
\end{document}
这framed
包在其参数周围放置了比实际更多的间距\fbox
。我可以通过修复将“单元格填充”减少到默认值\FrameSep
,但我不知道如何修复框架外的水平间距。文档很少。我读 TeX 不够流利,无法理解,framed.sty
但这是一个相当小的文件,所以我期望它很容易做到......
答案1
您可以尝试 mdframed.sty,扩展包 framed.sty。您可以更好地控制参数。查看所有选项的文档(mdframed-doc-en.pdf)框架。调整框内文本的参数有:innerleftmargin、innerrightmargin、innertopmargin 等,并且您可以使用宏\mdfsetup
来设置所有这些选项。
\documentclass{article}
\usepackage{mdframed}
\setlength{\parindent}{0pt}
\begin{document}
\fbox{Foo}
\fbox{Foo}
\begin{mdframed}
Foo
\end{mdframed}
\begin{mdframed}
Foo
\end{mdframed}
\end{document}
答案2
framed
根据添加间距\topsep
。尝试
\setlength{\topsep}{0pt}
以查看效果。为避免影响文档的其余部分,请在本地进行调整,即使用您自己的framed
类似环境来设置该长度。在您自己的环境中,您可以调用:
\begin{MakeFramed}{%
\setlength{\topsep}{0pt}%
\advance\hsize-\width \FrameRestore}
...
\end{MakeFramed}