脚注中的 mintinline 无法正确调整大小

脚注中的 mintinline 无法正确调整大小

当设置minted环境以使用特定的字体大小时,它无法根据环境正确地调整大小。

这是一个 MWE:

\documentclass{scrbook}
\usepackage[chapter]{minted}
\setminted[c++]{fontsize=\footnotesize}
%% define shortcut
\newcommand{\cd}[1]{\mintinline{c++}{#1}}
\newcommand{\cdfoot}[1]{\mintinline[fontsize=\scriptsize]{c++}{#1}}

\usepackage{scrhack}
\begin{document}

\chapter{one}

regular inline \cd{code}\footnote{footnote \cd{code} (the same size as in text)}

regular inline \cd{code} {\footnotesize \cd{code}} (no difference)

regular inline \cd{code} \cdfoot{code} (this would be expected)

\end{document}

如图所示,我可以通过使用额外的命令来解决这个问题,但这很容易出错,因为视觉差异很小,很容易错过错误的使用。

答案1

您似乎想要\cd使用取决于上下文的字体大小,即\footnotesize正常大小和\scriptsize脚注中(或\footnotesize生效时)。

你很幸运,因为scrbook使用 9pt 大小\footnotesize,所以你可以轻松使用relsize

\documentclass{scrbook}
\usepackage[chapter]{minted}
\usepackage{relsize}
\usepackage{scrhack}

%% define shortcut
\newcommand{\cd}{\mintinline[fontsize={\smaller}]{c++}}

\textheight=6cm % just to get a smaller picture

\begin{document}

\chapter{one}

regular inline \cd{code}\footnote{footnote \cd{code} (the same size as in text)}

regular inline \cd{code} {\footnotesize footnotesize \cd{code}}

\end{document}

在此处输入图片描述

相关内容