隨機播放符號會破壞腳註嗎?

隨機播放符號會破壞腳註嗎?

我目前正在用 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} 

相關內容