该类memoir
有许多用于将数字转换为单词的宏。例如
\numtotoname{113}
将打印一百一十三。
是否有适用于全部大写的等效宏?或者可以定义一个吗?
我试图定义:
\def\thechapter{\textsc{\numtoname{\@arabic\c@chapter}}}
这是有效的,
\textsc{\numtoname{\@arabic\c@chapter}},
但不是这个:
\def\chaptername{chapter}
\def\thechapter{\textsc{\numtoname{\@arabic\c@chapter}}}
笔记:
我正在尝试将章节编号转换为单词。我猜答案可能需要一些\expandafters
,但目前他们没有告诉我。
答案1
最简单的解决方案是使用fmtcount
:
\documentclass{memoir}
\let\ordinal\relax % to avoid a spurious warning
\usepackage{fmtcount}
\renewcommand{\thechapter}{\NUMBERstring{chapter}}
\begin{document}
\mainmatter
\chapter{A}
\end{document}
答案2
您可以使用fmtcount
包裹的\NUMBERstring
:
\documentclass{memoir}% http://ctan.org/pkg/memoir
\usepackage{fmtcount}% http://ctan.org/pkg/fmtcount
\renewcommand{\thechapter}{\NUMBERstring{chapter}}
\begin{document}
\setcounter{chapter}{112}
\chapter{A chapter}
\end{document}
答案3
这样怎么样;也许更像排版,而不像喊叫(:-):
{\scshape \NumToName{#1}}