我的 LaTeX 文档中有两个不同的日期,它们不是当前日期(来自网络表单的 LaTeX 模板中的日期)。它们看起来像这样:2016-03-31
,但我希望这些日期采用 格式dd/mm/yyyy
。我现在正在做的是使用包\usepackage[ddmmyyyy]{date time}
并将 放入\date{}
我的日期中,但它不会改变日期的格式。我该如何正确更改日期的格式?
答案1
这很有效。如果-
显示为日期分隔符,则可能是对 进行了“错误”的重新定义\dateseparator
。
请注意日期datetime
尚未进一步确定——Nicola Talbotdatetime2
大约在一年前就发表了文章。
\documentclass{article}
\usepackage[ddmmyyyy]{datetime}
%\renewcommand{\dateseparator}{-}
\title{The Theory of Brontosaurs}
\author{Mrs. Ann Elk}
\date{\today}
\begin{document}
\maketitle
\end{document}
更新
yyyy-mm-dd
以下是将输入转换为的版本dd/mm/yyyy
:
\documentclass{article}
\usepackage{xparse}
\ExplSyntaxOn
\newcommand{\changedate}[2][/]{%
\tl_set:Nx \l_tmpa_tl {#2}
\seq_set_split:NnV \l_tmpa_seq {-} {\l_tmpa_tl}
\seq_reverse:N \l_tmpa_seq
\seq_use:Nnnn \l_tmpa_seq {#1} {#1} {#1}
}
\ExplSyntaxOff
\title{The Theory of Brontosaurs}
\author{Mrs. Ann Elk}
\newcommand{\webdate}{2016-03-31}
\date{\changedate{\webdate}}
\begin{document}
%\changedate{\webdate}
\maketitle
\end{document}
答案2
\date
不会尝试解析其参数。它只是存储它,当您执行时,存储的值会插入到标题页中\maketitle
,因此如果您这样做\date{2016-03-31}
,那么这就是将要出现的内容。您需要明确地按照您想要的方式格式化它,例如\date{31/03/2016}
(正如其他人所建议的那样)或将 ISO 日期包装在可以解析它的命令中。例如:
\documentclass{article}
\usepackage[datesep=/,style=ddmmyyyy]{datetime2}
\title{Sample}
\author{Me}
\date{\DTMdate{2016-03-31}}
\begin{document}
\maketitle
Another date: \DTMdate{2016-03-07}.
\end{document}
生成:
另一种方法是修改\maketitle
工作方式,使其解析\@date
,但这需要了解您正在使用的类和包。没有最小工作示例(MWE)对此我们无法提供进一步的帮助。
答案3
\documentclass{article}
\usepackage[en,useregional]{datetime2}
\DTMnewdatestyle{mydateformat}{
\renewcommand{\DTMdisplaydate}[4]{
\DTMtwodigits{##3}~\DTMenglishmonthname{##2}~\number##1
}
\renewcommand{\DTMDisplaydate}[4]{%
\DTMdisplaydate{##3}{##2}{##1}{##4}%
}%
}
\DTMsetdatestyle{mydateformat}
\begin{document}
\DTMdate{2022-3-2} % (02 March 2022)When you input date as YYYY-MM-DD format
\\
\DTMDate{3-6-2023} % (03 June 2023)When you input date as DD-MM-YYYY fomat
\end{document}
这里将显示日期,如 2023 年 5 月 4 日格式,要显示 dd-mm-yyyy 或 yyyy-mm-dd 格式,则显示 DD MMMM YYYY 格式,如显示 2022 年 9 月 2 日至 2022 年 9 月 2 日