有没有命令可以将首字母变为大写?

有没有命令可以将首字母变为大写?

我发现LaTex中有很多命令可以满足各种字体形状的要求。例如,\textsc{...}forSmall Capitals\uppercase{...}forUPPERCASE等。参见下图,这是表格维基百科https://en.wikibooks.org/wiki/LaTeX/Fonts

但是,我没有找到将首字母大写的命令,也就是说,是否存在first letter upper case这样的命令?First Letter Upper Case

答案1

是的,使用该mfirstuc包。

\documentclass{article}
\usepackage{mfirstuc}
\begin{document}
\capitalisewords{first letter upper case}
\end{document}

此外,可以排除一些单词(如“a”、“an”、“the”、“at”、“by”、“for”等),以遵循大写样式\MFUnocap{单词}

\documentclass{article}
\usepackage{mfirstuc}
\MFUnocap{are}
\MFUnocap{or}
\MFUnocap{etc}
\begin{document}
\capitalisewords{first letters are upper case or lower case, etc}.
\end{document}

在这种情况下,结果应该是:

首字母为大写或小写等。

但是,请注意,此包使用普通空格来确定什么是单词,因此,如果排除“case”,则仅在第一次匹配时才有效,因为第二次出现的单词实际上是“case,”(带有逗号)。

或者,该titlecaps包可以执行相同的任务,但要注意标点符号:

\documentclass{article}
\usepackage{titlecaps}
\Addlcwords{are or etc}
\begin{document}
\titlecap{first letters are upper case or lower case, etc.}
\end{document}

输出完全相同,但请注意,最后一个句点位于大写字符串内,并且“etc”正确地未大写。

还请注意,如果文本字符串中有文本格式化命令,那么这两个软件包的结果可能会有所不同,这会使大写任务变得更加复杂。例如,这两个软件包都能很好地管理\textit{xxx}\emph{xxx}仅在 时失败titlecaps\itshape xxx仅在 时失败 mfirstuc ,但{\itshape xxx}在两个软件包中都会失败(尽管方式不同)。

答案2

您可以使用\MakeUppercase命令,
当您写入时note={\MakeUppercase accessed:2.3.2019}
输出:Accessed 2.3.2019
否则如果您写入 note={\MakeUppercase {accessed}:2.3.2019}
输出:ACCESSED 2.3.2019

例如:

@misc{ref5, 
title={Use of Images}, url={https://www.hpl.ca/articles/use-images},
note = {\MakeUppercase  Accessed: 25.10.2019}}

相关内容