Pandoc:使用变量创建动态 headers
Pandoc: Creating dynamic headers with Variables
在我的序言中我使用:
\usepackage[ngerman,english]{isodate}
\newcommand{\langMonth}{\month@ngerman}
$if(langDe)$
\renewcommand{\langMonth}{\month@ngerman}
$endif$
$if(langEn)$
\renewcommand{\langMonth}{\month@english}
$endif$
\usepackage{tikz}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\fancyfoot[CO,CE]{\thepage}
%\setlength\headheight{100pt}
\rhead{\begin{tikzpicture}\node[above right, opacity=.5] { $if(Beschreibung)$$Beschreibung$$endif$ };
\node[below right, opacity=.5]{\langMonth \, \the\year };
\end{tikzpicture}}
\lhead{\begin{tikzpicture}
\node[opacity=.5] {\includegraphics[width=0.25\textwidth]{images/Logo.png}};
\end{tikzpicture} }
我基本上想要两件事:根据语言写下月份,但是,我得到了 LaTeX 错误:缺少 \begin{document}。
我想要的另一件事是在 header 中动态设置一些描述,但是变量 Beschreibung 只是被忽略了。我通过以下方式调用 pandoc:
pandoc -o doc.pdf test.md --template mytemplate.latex --pdf-engine lualatex --verbose -V Beschreibung=dynamicDescription
有什么建议吗?非常感谢。
无需重新发明轮子,您可以使用 babel
和 datetime2
程序包以文档的语言自动打印月份。
\documentclass[ngerman]{book}
\usepackage{babel}
\usepackage[calc]{datetime2}
\usepackage{tikz}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\fancyfoot[CO,CE]{\thepage}
\setlength\headheight{100pt}
\rhead{\begin{tikzpicture}
\node[below right, opacity=.5]{\DTMmonthname{\the\month}
\, \the\year };
\end{tikzpicture}}
\lhead{\begin{tikzpicture}
\node[opacity=.5] {\includegraphics[width=0.25\textwidth]{example-image-duck}};
\end{tikzpicture} }
\begin{document}
test
\end{document}
在我的序言中我使用:
\usepackage[ngerman,english]{isodate}
\newcommand{\langMonth}{\month@ngerman}
$if(langDe)$
\renewcommand{\langMonth}{\month@ngerman}
$endif$
$if(langEn)$
\renewcommand{\langMonth}{\month@english}
$endif$
\usepackage{tikz}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\fancyfoot[CO,CE]{\thepage}
%\setlength\headheight{100pt}
\rhead{\begin{tikzpicture}\node[above right, opacity=.5] { $if(Beschreibung)$$Beschreibung$$endif$ };
\node[below right, opacity=.5]{\langMonth \, \the\year };
\end{tikzpicture}}
\lhead{\begin{tikzpicture}
\node[opacity=.5] {\includegraphics[width=0.25\textwidth]{images/Logo.png}};
\end{tikzpicture} }
我基本上想要两件事:根据语言写下月份,但是,我得到了 LaTeX 错误:缺少 \begin{document}。 我想要的另一件事是在 header 中动态设置一些描述,但是变量 Beschreibung 只是被忽略了。我通过以下方式调用 pandoc:
pandoc -o doc.pdf test.md --template mytemplate.latex --pdf-engine lualatex --verbose -V Beschreibung=dynamicDescription
有什么建议吗?非常感谢。
无需重新发明轮子,您可以使用 babel
和 datetime2
程序包以文档的语言自动打印月份。
\documentclass[ngerman]{book}
\usepackage{babel}
\usepackage[calc]{datetime2}
\usepackage{tikz}
\usepackage{fancyhdr}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\fancyfoot[CO,CE]{\thepage}
\setlength\headheight{100pt}
\rhead{\begin{tikzpicture}
\node[below right, opacity=.5]{\DTMmonthname{\the\month}
\, \the\year };
\end{tikzpicture}}
\lhead{\begin{tikzpicture}
\node[opacity=.5] {\includegraphics[width=0.25\textwidth]{example-image-duck}};
\end{tikzpicture} }
\begin{document}
test
\end{document}