从今天的日期转换为指定的日期

从今天的日期转换为指定的日期

我刚刚接触 TeX 几个小时,并被要求修改现有的模板(tex)文档以进行解析。

我有一个文件cls,它可以很好地将#1天数添加到今天的日期:

\newcommand*{\duedate}[1]{%
    \setdatetoday%
    \addtocounter{datenumber}{#1}%
    \setdatebynumber{\thedatenumber}%
    \datedate%
}

#2但是,我需要将其更改为将作为附加参数传入的基准日期,然后添加它#1

我尝试使用\date,但它继续拾取今天的日期。

\newcommand*{\duedate}[2]{%
    \date{#2}%
    \addtocounter{datenumber}{#1}%
    \setdatebynumber{\thedatenumber}%
    \datedate%
}

\setdate

但是,输出始终是今天的日期 + #1

如果有关于如何设置日期以及如何在日期中添加“天数”的文档,请告诉我。我非常乐意阅读正确的语法(phun)!

答案1

在评估@modnar 评论中的链接后,这将起作用:

\usepackage[calc,en-US]{datetime2}
\newcommand{\dueDate}[2]{%
    \DTMsavedate{InvoiceDate}{#2}
    \newcount\daycount
    \DTMsaveddateoffsettojulianday{InvoiceDate}{#1}\daycount
    \DTMsavejulianday{newDate}{\number\daycount}
    \DTMusedate{newDate}
 }

然而,这会导致文件中的datetime2和之间产生冲突。datenumbercls

所以上面的代码.tex此时必须位于主文档中。

相关内容