用大写字母替换缺失的小写字母

用大写字母替换缺失的小写字母

我使用glossaries选项sc将首字母缩略词设置为小写。这在正文中运行良好,但我用于分段(以及重要的description标签)的字体没有小写,因此会出现如下问题:

\documentclass{scrartcl}

\usepackage[smallcaps]{glossaries}
\newacronym{sc}{smallcaps}{little big letters}
\makeglossaries

\begin{document}

\section{\Glsname{sc} in a section title}
\Gls{sc}

\section{this is better: \GLSname{sc}}

\printglossaries
\end{document}

在此处输入图片描述

我想将无衬线字体中的小写字母替换为“大写字母”(或者可能是伪小写字母)。有办法吗?

笔记:我有一个基于\GLSname分段和\let\glsnamefont\uppercase词汇表的半令人满意的解决方案。我仍然想知道是否有可能根据字体进行“智能”替换。

答案1

您可以使用以下方法模拟不存在的小型无衬线字体\small\MakeUppercase

\documentclass{scrartcl}

\usepackage[smallcaps]{glossaries}
\newacronym{sc}{smallcaps}{little big letters}
\makeglossaries

\renewcommand\glsnamefont[1]{\small\MakeUppercase{#1}}

\begin{document}

\section{\Glsname{sc} in a section title}
\Gls{sc}

\section{this is better: \GLSname{sc}}

\printglossaries
\end{document}

在此处输入图片描述

相关内容