我想通过引用 mdframe 样式“mpdframe”来定义 mdframe 样式“studies”。在所示的示例中,不同之处在于添加框架标题“Studies”。
下面的代码不会产生错误,但也没有产生预期的效果。
% Principal MPD frame type
\mdfdefinestyle{mpdframe}{
frametitlebackgroundcolor =black!15,
frametitlerule =true,
roundcorner =10pt,
middlelinewidth =1pt,
innermargin =0.5cm,
outermargin =0.5cm,
innerleftmargin =0.5cm,
innerrightmargin =0.5cm,
innertopmargin =\topskip,
innerbottommargin =\topskip,
}
% Studies
\mdfdefinestyle{studies}{%
\mdfapptodefinestyle{mpdframe}{frametitle={Studies}}
}
\newmdenv[style=studies]{studies}
可以用其他方法完成吗?
理想情况下,我希望通过引用此基本样式来以这种方式定义多种样式,而不是不断重复选项命令。
答案1
style
在定义另一个时,您可以简单地使用一个:
\mdfdefinestyle{studies}{%
style=mpdframe,% <------ previously defined style
frametitle={Studies},
}
笔记:
- 使用
\usepackage[framemethod=tikz]{mdframed}
时也需要。tikz
mdframed
代码:
\documentclass{article}
\usepackage{xcolor}
\usepackage[framemethod=tikz]{mdframed}
\usepackage{lipsum}
% Principal MPD frame type
\mdfdefinestyle{mpdframe}{
frametitlebackgroundcolor =black!15,
frametitlerule =true,
roundcorner =10pt,
middlelinewidth =1pt,
innermargin =0.5cm,
outermargin =0.5cm,
innerleftmargin =0.5cm,
innerrightmargin =0.5cm,
innertopmargin =\topskip,
innerbottommargin =\topskip,
}
% Studies
\mdfdefinestyle{studies}{%
style=mpdframe,
frametitle={Studies},
}
\newmdenv[style=studies]{studies}
\begin{document}
\begin{studies}
\lipsum[1]
\end{studies}
\end{document}