随机播放符号会破坏脚注吗?

随机播放符号会破坏脚注吗?

我目前正在使用 Springer 的“svmono”类重新编译专著草稿。编译文件时,一切似乎都运行正常,但 TeX 第一次遇到脚注时会抛出错误消息

! LaTeX Error: Font U/shuffle/m/n/4.25 not found.

这是一个产生错误的最小示例:

\documentclass{svmono}
\usepackage{shuffle}

\begin{document}
This is a footnote.
\footnote{This generates an error message.}
\end{document}

如果注释掉“脚注”行,它就可以正常工作。如果有人想尝试,这里有一个指向 svmono 类的 Dropbox 链接:https://dl.dropboxusercontent.com/u/2623632/svmono.cls。有人知道如何修复这个问题吗?

虽然我需要在正文中使用随机符号,但我从来不需要在脚注中使用随机符号,因此我很乐意找到一种解决方案,以破坏 \footnote 命令中的 \shuffle 命令为代价来修复错误消息。如果有帮助的话,我在 OS X 上使用 TeX Live 2013。非常感谢您的任何提示!

答案1

定义的数学尺寸svmono是非标准的。

这是一条出路

\documentclass{svmono}
\usepackage{fix-cm} % avoid tons of warnings
\usepackage{shuffle}
\DeclareFontFamily{U}{shuffle}{}
\DeclareFontShape{U}{shuffle}{m}{n}{ <-8>shuffle7 <8->shuffle10}{}

\begin{document}
This is a footnote.
\footnote{This generates an error message.}
\end{document}

答案2

快速解决。

重新定义与 中的定义\footnotesize不同,而是:\smallsvmono.sty

\makeatletter
\renewcommand\footnotesize{%
   \@setfontsize\footnotesize{8}{10}%
   \abovedisplayskip 8.5\p@ % \@plus3\p@ \@minus4\p@
   \abovedisplayshortskip \z@ %\@plus2\p@
   \belowdisplayshortskip 4\p@ %\@plus2\p@ \@minus2\p@
   \def\@listi{\leftmargin\leftmargini
               \parsep \z@ \@plus\p@ \@minus\p@
               \topsep 6\p@ \@plus2\p@ \@minus4\p@
               \itemsep\z@}%
   \belowdisplayskip \abovedisplayskip
}

梅威瑟:

\documentclass{svmono}
\usepackage{shuffle}

\makeatletter
\renewcommand\footnotesize{%
   \@setfontsize\footnotesize{8}{10}%
   \abovedisplayskip 8.5\p@ % \@plus3\p@ \@minus4\p@
   \abovedisplayshortskip \z@ %\@plus2\p@
   \belowdisplayshortskip 4\p@ %\@plus2\p@ \@minus2\p@
   \def\@listi{\leftmargin\leftmargini
               \parsep \z@ \@plus\p@ \@minus\p@
               \topsep 6\p@ \@plus2\p@ \@minus4\p@
               \itemsep\z@}%
   \belowdisplayskip \abovedisplayskip
}

\begin{document}
This is a footnote.
\footnote{This doesn't generates an error message.}
\end{document} 

输出:

在此处输入图片描述

另一种方法是覆盖 中包含的定义Ushuffle.fd,即在序言中添加以下几行:

\DeclareFontFamily{U}{shuffle}{}
\DeclareFontShape{U}{shuffle}{m}{n}{%
<4-8>shuffle7%
<8->shuffle10%
}{}

MWE(结果同上):

\documentclass{svmono}
\usepackage{shuffle}

\DeclareFontFamily{U}{shuffle}{}
\DeclareFontShape{U}{shuffle}{m}{n}{%
<4-8>shuffle7%
<8->shuffle10%
}{}

\begin{document}
This is a footnote.
\footnote{This doesn't generates an error message.}
\end{document} 

相关内容