我正在使用 \LaTeX 中的 datenumber 包来做其他事情,但输出的格式为 (月日,年),即 2020 年 1 月 29 日。我想将其更改为 2020 年 1 月 29 日或 2020 年 1 月 29 日。我找不到使用 datenumber 包更改它的方法。有人知道吗?谢谢。
编辑:我正在使用这个代码:https://tex.stackexchange.com/a/505895/205680并想更改输出日期格式。谢谢。
答案1
您可以使用english
以下选项,以“日月年”格式设置日期(其中日为序数):
\documentclass{article}
\usepackage[english]{datenumber}
\begin{document}
\datedate
\end{document}
或者,只需定义\datedate
即可满足您的需求:
\documentclass{article}
\usepackage{datenumber}
\def\datedate{\thedateday~\datemonthname \space\thedateyear}
\begin{document}
\datedate
\end{document}
\datedate
打印当前日期,即使手动更新/设置为其他日期(例如下周三的日期),因此不仅限于当前日期。
答案2
使用datetime2
并创建新的样式:
\documentclass{article}
\usepackage[calc,english]{datetime2}
% Date/time style:
% <dow> <dayofmonth>. <monthname> <yyyy>, <hh>:<mm>:<ss> <ampm> CET
% Example: Saturday 25. February 2017, 01:24:01 PM CET
\DTMnewdatestyle{mydatestyle}{%
% \DTMdisplaystyle{<YYYY>}{<MM>}{<DD>}{<dow>}
\renewcommand{\DTMdisplaydate}[4]{%
\DTMsettimestyle{mytimestyle}% Set the time style
\DTMweekdayname{##4}% Day of week
\space
##3% Day of month
. % Period
\DTMmonthname{##2}% Month of year
\space
##1% Year
, % Comma
\DTMcurrenttime
}%
\renewcommand{\DTMDisplaydate}{\DTMdisplaydate}%
}
\DTMnewtimestyle{mytimestyle}{%
% \DTMdisplaytime{<hh>}{<mm>}{<ss>}
\renewcommand{\DTMdisplaytime}[3]{%
\def\THEHOUR{##1}\def\THEAMPM{AM}% Assume AM
\ifnum##1>12
\edef\THEHOUR{\number\numexpr##1-12}% Correct for...
\edef\THEAMPM{PM}% ...PM
\fi
\DTMtwodigits{\THEHOUR}% <hh>
:%
\DTMtwodigits{##2}% <mm>
:%
\DTMtwodigits{##2}% <ss>
\space
\THEAMPM% AM/PM
\space
CET% CET
}%
}
\begin{document}
\DTMsetdatestyle{mydatestyle}
Today is \today.
\end{document}
感谢@Werner—— https://tex.stackexchange.com/a/396700/197451