乳胶日期:仅限月年

乳胶日期:仅限月年

在我的论文类文件中,我目前有

\begin{center}%
\@date%
\end{center}%

在标题页上生成格式为日-月-年的日期。

我该如何改变它以便它只显示月份和年份?

谢谢

答案1

在标题页上生成格式为日-月-年的日期。

\@date通常初始化为\today,并且默认格式为\today美国风格 就像简单的例子所示:

\documentclass{article}

\begin{document}
\today
\end{document}

2018 年 3 月 11 日

\@date如果您的文档针对( )的默认定义生成了日-月-年\today,那么您可能加载了会改变 的包\today,例如语言包(babelpolyglossia)或以下包之一日期套餐。解决方案取决于您加载了哪个重新定义的包\today。如果只是babelpolyglossia,那么您可以使用datetime2datetime2-english. (两者都需要独立安装。)

例如:

\documentclass{article}

\usepackage[british]{babel}
\usepackage[useregional]{datetime2}
\DTMlangsetup[en-GB]{showdayofmonth=false}

\begin{document}
\today
\end{document}

2018 年 3 月

还支持其他各种区域datetime2-english。选择最适用的区域。例如,

\documentclass{article}
\usepackage[USenglish]{babel}
\usepackage[useregional]{datetime2}
\DTMlangsetup[en-US]{showdayofmonth=false}

\begin{document}
\today
\end{document}

或者

\documentclass{article}
\usepackage[english]{babel}
\usepackage[en-IE]{datetime2}
\DTMlangsetup[en-IE]{showdayofmonth=false}

\begin{document}
\today
\end{document}

另一种可能性是\@date已被重新定义(因此它不再扩展为\today)。检查您的类文件和文档代码中是否存在 的任何实例\date或 的任何显式定义\@date。您可以使用\show进行调试。例如,如果您(暂时)将代码修改为

\begin{center}%
\show\@date
\@date
\end{center}%

然后抄本将显示 的定义\@date。如果您收到消息

> \@date=macro:
->\today .

那么它\today已经被修改了,但是如果你得到了不同的东西,例如

> \@date=macro:
->11 March 2018.

然后\@date已经被重新定义,在这种情况下,您需要找到它被重新定义的位置并进行相应的修改。

答案2

如果您想在论文中看到“2018 年 3 月”;只需输入\date{March 2018}论文文本即可。这会将宏初始化\@dateMarch 2018

此外,这里有一个简单的宏(\printdate)来以所需的格式打印日期:

\documentclass{article}

\newcommand*{\printdate}{%
   \ifcase \month\or January\or February\or March\or April\or May\or June\or July\or
    August\or September\or October\or November\or December\fi \space \number\year}

\begin{document}

\printdate

\end{document}

相关内容