framed
我在将该包与环境结合时遇到了一点小问题itemize
:
\documentclass[parskip]{scrartcl}
\usepackage{fancybox}
\usepackage{framed}
\newenvironment{simpages}%
{\def\FrameCommand{\fboxsep=\FrameSep \shadowbox}\MakeFramed {\FrameRestore}}%
{\endMakeFramed}
\begin{document}
Some text
\begin{simpages}
\begin{itemize}
\item Foo
\item Bar
\item Baz
\end{itemize}
\end{simpages}
Some more text
\end{document}
这导致以下结果:
如您所见,项目上方的垂直空间比下方的大得多 - 这就是我想要纠正的。我尝试切换到mdframed
包正如这里建议的那样,但目前还没有成功:
\documentclass[parskip]{scrartcl}
\usepackage{mdframed}
\newmdenv{simpages}
\begin{document}
Some text
\begin{simpages}
\begin{itemize}
\item Foo
\item Bar
\item Baz
\end{itemize}
\end{simpages}
Some more text
\end{document}
结果几乎相同,只是现在缺少阴影效果......
为什么环境内容上方和下方的垂直空间不同,我该如何调整?
答案1
这里有两个选项可以生成阴影框,一个使用mdframed
,另一个是tcolorbox
:
\documentclass[parskip]{scrartcl}
\usepackage[most]{tcolorbox}
\usepackage[framemethod=tikz]{mdframed}
\usetikzlibrary{shadows}
\newmdenv[
shadow=true]
{simpages}
\newtcolorbox{tsimpages}{
enhanced,
breakable,
arc=0pt,
outer arc=0pt,
colback=white,
shadow={1mm}{-1mm}{0mm}{color=black!50,sharp corners},
}
\begin{document}
Some text
\begin{simpages}
\begin{itemize}
\item Foo
\item Bar
\item Baz
\end{itemize}
\end{simpages}
Some more text
\begin{tsimpages}
\begin{itemize}
\item Foo
\item Bar
\item Baz
\end{itemize}
\end{tsimpages}
Some more text
\end{document}
并且对于framed
软件包,进行一些调整以便parskip
选项不会干扰:
\documentclass[parskip]{scrartcl}
\usepackage{fancybox}
\usepackage{framed}
\usepackage{etoolbox}
\newenvironment{simpages}%
{\AtBeginEnvironment{itemize}{\parskip=0pt\parsep=0pt\partopsep=0pt}
\def\FrameCommand{\fboxsep=.5\FrameSep\shadowbox}\MakeFramed {\FrameRestore}}%
{\endMakeFramed}
\begin{document}
Some text
\begin{simpages}
\begin{itemize}
\item Foo
\item Bar
\item Baz
\end{itemize}
\end{simpages}
Some more text
\end{document}