在 tcolorbox 中使用带参数的快捷方式

在 tcolorbox 中使用带参数的快捷方式

我想做这样的事:

\documentclass{article}    
\usepackage[ngerman]{isodate} %for printing the date
\usepackage[dvipsnames]{xcolor} %for color names
\usepackage{tcolorbox}
\usepackage{lipsum}

\newcommand{\MyArgument}{Datum: \printdate{#1}}

\newtcolorbox{MyBox1}[1]{colback=red!5!white, colframe=red!75!black, title=\MyArgument }

%some more "\newtcolorbox{...}" with different colors, but all with title=\MyArgument

\begin{document}

 \begin{MyBox}{2014-02-11}
  \lipsum
 \end{MyBox}

\end{document}

输出应是一个标题为“日期:2014 年 2 月 11 日”(德语日期格式)的框

目的是想能够同时更改所有框的标题。我该怎么做?

答案1

不确定这是否是你想要的:

\documentclass[dvipsnames]{article}
\usepackage{tcolorbox}
\usepackage[english]{isodate} %for printig the date
\usepackage{lipsum}

\newcommand\MyCom[1]{Datum:~\numdate{#1}}

\newtcolorbox{MyBoxi}[1]{
  colback=red!5!white,
  colframe=red!75!black,
  title=\MyCom{#1}
}
\newtcolorbox{MyBoxii}[1]{
  colback=cyan!5!white,
  colframe=cyan!75!black,
  title=\MyCom{#1}
}

\begin{document}

 \begin{MyBoxi}{2014-02-11}
  \lipsum[4]
 \end{MyBoxi}

 \begin{MyBoxii}{2014-02-11}
  \lipsum[4]
 \end{MyBoxii}

\end{document}

在此处输入图片描述

相关内容