![mdframed 中的字幕块](https://linux22.com/image/272112/mdframed%20%E4%B8%AD%E7%9A%84%E5%AD%97%E5%B9%95%E5%9D%97.png)
我在使用 时遇到了一个小问题mdframed.sty
。字幕块似乎有一个0.4pt
与字幕背景颜色相同的框架。这导致字幕框架的左右两端稍微侵入框架的整体线宽:
这直接来自用户指南中的代码:
\documentclass{amsart}
\usepackage[tikz]{mdframed}
\usepackage{xcolor}
\newmdenv[%
roundcorner=5pt,
subtitlebelowline=true,subtitleaboveline=true,
subtitlebackgroundcolor=yellow!70!white,
backgroundcolor=blue!20!white,
frametitle={Theorem},frametitlerule=true,
frametitlebackgroundcolor=yellow!70!white,
]{subtitleenv}
\begin{document}
\begin{subtitleenv}
Some Text \ldots
\mdfsubtitle{Notes}
Some Text \ldots
\end{subtitleenv}
\end{document}
我查看了代码(非常清晰),但找不到解决linewidth
整个字幕框架问题的咒语。
有什么建议吗?
答案1
问题在于样式(在提供带有选项的样式的mdfsubtitlebackground
文件中找到)使用背景颜色;定义:md-frame-1.mdf
mdframed
framemethod=tikz
draws
\tikzset{mdfsubtitlebackground/.style={%
draw=\mdf@subtitlebackgroundcolor,
fill=\mdf@subtitlebackgroundcolor,
}%
}
一个简单的解决方法是使用以下方法来设置此样式draw=none
:
\documentclass{amsart}
\usepackage[tikz]{mdframed}
\usepackage{xcolor}
\makeatletter
\tikzset{
mdfsubtitlebackground/.style={
draw=none,
fill=\mdf@subtitlebackgroundcolor}
}
\makeatother
\newmdenv[%
innerlinewidth=0.2pt,
roundcorner=5pt,
subtitlebelowline=true,subtitleaboveline=true,
subtitlebackgroundcolor=yellow!70!white,
backgroundcolor=blue!20!white,
frametitle={Theorem},frametitlerule=true,
frametitlebackgroundcolor=yellow!70!white,
]{subtitleenv}
\begin{document}
\begin{subtitleenv}
Some Text \ldots
\mdfsubtitle{Notes}
Some Text \ldots
\end{subtitleenv}
\end{document}
正如软件包作者所评论的那样,该问题现已修复,并将在软件包的新版本中得到更正。