在下面的代码中,我如何将 应用于\baselineskip=.8cm
环境theorem
?我想以某种方式在\mdfdefinestyle
或\mdtheorem
命令中执行此操作,而不是每次手动在主体中执行此操作。另外,我不想使用\linespread
或 之类的命令\baselinestretch
。
\documentclass{book}
\usepackage{lipsum}
\usepackage[framemethod=TikZ]{mdframed}
\mdfdefinestyle{mystyle}{%
frametitlerulewidth=0pt,
frametitlerule=true,
frametitlefont=\color{black},
frametitlebackgroundcolor=yellow,
}
\mdtheorem[style=mystyle]{theorem}[chapter]{Theorem}
\begin{document}
\lipsum[1]
\begin{theorem}[Pythagorean theorem]
\lipsum[2]
\end{theorem}
\end{document}
答案1
你可以这样做startinnercode
:
\documentclass{book}
\usepackage{lipsum}
\usepackage[framemethod=TikZ]{mdframed}
\mdfdefinestyle{mystyle}{
frametitlerulewidth=0pt,
frametitlerule=true,
frametitlefont=\color{black},
frametitlebackgroundcolor=yellow,
startinnercode={\baselineskip=0.8cm},
}
\mdtheorem[style=mystyle]{theorem}[chapter]{Theorem}
\begin{document}
\lipsum[1]
\begin{theorem}[Pythagorean theorem]
\lipsum[2]
\end{theorem}
\end{document}
但是,使用\linespread{<factor>}\selectfont
肯定更好,我不明白你为什么不想使用它。
答案2
我不知道您为什么不想要这些命令。无论如何,我建议使用该set space
包,结合\AtbeginEnvironment
来自的命令etoolbox
。我测量了行间距确实是 8mm:
\documentclass{book}
\usepackage{lipsum}
\usepackage[framemethod=TikZ]{mdframed}
\mdfdefinestyle{mystyle}{%
frametitlerulewidth=0pt,
frametitlerule=true,
frametitlefont=\color{black},
frametitlebackgroundcolor=yellow,
}
\mdtheorem[style=mystyle]{theorem}[chapter]{Theorem}
\usepackage{setspace}
\usepackage{etoolbox}
\AtBeginEnvironment{theorem}{\setstretch{1.9}}
\begin{document}
\lipsum[1]
\begin{theorem}[Pythagorean theorem]
\lipsum[2]
\end{theorem}
\end{document}