与 fancyhdr 和 background 相关的 doclicense 问题

与 fancyhdr 和 background 相关的 doclicense 问题

这是尝试插入文件许可在文档的每一页中输出,使用花式高清

\documentclass[12pt]{article}
\usepackage[
    type={CC},
    modifier={by-sa},
    version={3.0}]{doclicense}
\usepackage{fancyhdr}

\fancypagestyle{logo}{
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\fancyfoot[LE,RO]{ \resizebox{0.4\textwitdh}{!}{\doclicenseThis} }
}

\pagestyle{logo}

\begin{document}

Some text.

\newpage

Some new text.

\end{document}

此代码不起作用,导致出现此错误

Something's wrong--perhaps a missing \item. \newpage

\newpage,并多次出现此错误

Something's wrong--perhaps a missing \item. \end{document}

最后,也可以简单地使用\doclicenseThis而不是resizebox。其他错误包括:

Undefined control sequence. \end{document}
Illegal unit of measure (pt inserted). \end{document}
\fancyfoot's `E' option without twoside option is useless

这与包中发生的情况类似背景

\documentclass[12pt]{article}
\usepackage[
    type={CC},
    modifier={by-sa},
    version={3.0}
]{doclicense}
\usepackage{background}

\backgroundsetup{contents={\doclicenseThis}}

\begin{document}

Some text.

\newpage

Some new text.

\end{document}

会产生多次

Something's wrong--perhaps a missing \item.

在文档处\newpage和文档末尾。

这可能是什么问题?如何解决这个问题?

答案1

\doclicenseThis包含一个center环境,它在一个内部中断\hbox\resizebox是一个\hbox带有一些奇特元素的环境)。

如果你试试:

\resizebox{1cm}{!}{%
\begin{center}
  D'oh
\end{center}
}

你会得到同样的错误。

的问题background是一样的。contents背景的插入了 TiZ \node,这是另一个幻想\hbox,因此它也会失败:

\tikz\node{%
  \begin{center}
    D'oh
  \end{center}%
};

但解决这个问题要棘手得多,所以下面我使用 来寻求解决方案fancyhdr

除了重新定义\doclicenseThis,您还可以将其放在minipage而不是 中\resizebox。只需手动调整一下尺寸,您就可以获得:

在此处输入图片描述

\documentclass[12pt]{article}
\usepackage[
    type={CC},
    modifier={by-sa},
    version={3.0}]{doclicense}
\usepackage{fancyhdr}

\makeatletter
\fancypagestyle{logo}{%
  \fancyhf{}%
  \renewcommand{\headrulewidth}{0pt}%
  \fancyfoot[LE,RO]{%
    \begin{minipage}{0.5\textwidth}%
      \def\doclicense@imagewidth{2cm}%
      \tiny
      \doclicenseThis
    \end{minipage}%
  }%
}
\makeatother

\pagestyle{logo}

\begin{document}

Some text.

\newpage

Some new text.

\end{document}

相关内容