部分字幕文本采用小写字母

部分字幕文本采用小写字母

我想将标题中的部分文本改为小写,而不是整个标题文本。将我想要的部分改为小写无效。我该如何实现?

其中一位评论者要求我发布一个最低限度的工作示例,我已在下面完成。示例中使用的 sig-alternate 样式可以下载这里

\documentclass{sig-alternate}
\begin{document}
\begin{figure}[t]
\centering
\includegraphics[width=.15\linewidth]{Figures/myfig.eps}
\caption{Sample caption with \textsc{small caps} for some portion.}
\label{fig:myfig}
\end{figure}
\end{document}

答案1

正如我在评论中提到的那样,在无法使用的情况下\scshape,可以伪造它(参见描述标签中使用小型大写字母吗?)同样的,让假货看起来合理的关键是在垂直和水平方向上使用不同的比例。

然而,在环境中使用时\caption,必须对其进行\protect编辑。

水平 lc、垂直 lc 和水平 uc 拉伸参数的值,

\def\Hscale{.80}\def\Vscale{.72}\def\Cscale{1.0}

应根据您使用的特定字体进行定制。

\documentclass{article}
\usepackage[demo]{graphicx}

\newcommand\fauxsc[1]{\fauxschelper#1 \relax\relax}
\def\fauxschelper#1 #2\relax{%
  \fauxschelphelp#1\relax\relax%
  \if\relax#2\relax\else\ \fauxschelper#2\relax\fi%
}
\def\Hscale{.80}\def\Vscale{.72}\def\Cscale{1.0}
\def\fauxschelphelp#1#2\relax{%
  \ifnum`#1>``\ifnum`#1<`\{\scalebox{\Hscale}[\Vscale]{\uppercase{#1}}\else%
    \scalebox{\Cscale}[1]{#1}\fi\else\scalebox{\Cscale}[1]{#1}\fi%
  \ifx\relax#2\relax\else\fauxschelphelp#2\relax\fi}

\begin{document}
\begin{figure}[t]
\centering
\includegraphics[width=.15\linewidth]{Figures/myfig.eps}
\caption{Sample caption with \protect\fauxsc{fake Small Caps} 
  and \textsc{real Small Caps} for some portion.}
\label{fig:myfig}
\end{figure}
\end{document}

在此处输入图片描述

或者,人们也可以\protect在定义本身中提出论点:

\newcommand\fauxsc[1]{\protect\fauxschelper#1 \relax\relax}

在这种情况下,参数\protect中不再需要\caption

相关内容