以自定义格式展开 \today

以自定义格式展开 \today

我想填写已打印的表格。表格上有方框用于记录当前日期。如何展开当前日期,使其看起来像 1 4 0 2 2 0 2 2,数字之间有空格

答案1

在这里,我使用该datetime包来获取日期数字的正确顺序和格式...然后我使用标记循环在每个数字后插入一个空格。

\documentclass{article}
\usepackage{datetime,calc,tokcycle}
\Characterdirective{\addcytoks{#1\ }}
\newcommand{\customtoday}{\expandedtokcyclexpress
  {\twodigit{\the\day}\twodigit{\the\month}\the\year}\the\cytoks\unskip}

\begin{document}
    Custom date is \customtoday.
\end{document}

在此处输入图片描述

答案2

如果您希望数字适合一些预定的框,则需要将每个数字放在适当宽度的框中,因此我提供了一个可选参数来直观地固定所需的宽度。

\documentclass{article}

\ExplSyntaxOn

\NewDocumentCommand{\spacedcurrentdate}{O{1em}}
 {
  \exp_args:Ne \tl_map_inline:nn
   {
    \int_compare:nT { \c_sys_day_int < 10 } { 0 }
    \int_use:N \c_sys_day_int
    \int_compare:nT { \c_sys_month_int < 10 } { 0 }
    \int_use:N \c_sys_month_int
    \int_use:N \c_sys_year_int
   }
   { \makebox[#1]{##1} }
}

\ExplSyntaxOff

\begin{document}

X\spacedcurrentdate X

X\spacedcurrentdate[1.2em]X

\end{document}

在此处输入图片描述

相关内容