pdfTex 的 attachment2 和 vldb.cls 错误

pdfTex 的 attachment2 和 vldb.cls 错误

对于以下 MWE:

\documentclass{vldb}%provided by https://vldb.org/2019/?formatting-guidelines

\usepackage{attachfile2}
\usepackage{xcolor}%not required, makes "click to open" readable
\usepackage{filecontents}%not required, for convenience

\begin{document}
\begin{filecontents}{file.txt}
content
\end{filecontents}   
\textattachfile[color=blue]{file.txt}{click to open}
\end{document}

这会产生以下错误:

pdfTeX error (ext1): \pdfxform cannot be used with a void box. ...hfile[color=blue]{file.txt}{click to open}

经过一番调查后,似乎 vldb.cls 中的一行是导致此错误的原因,如修改后的 MWE 所示:

\documentclass{article}

\usepackage{attachfile2}
\usepackage{xcolor}%not required, makes "click to open" readable
\usepackage{filecontents}%not required, for convenience

\begin{document}
\begin{filecontents}{file.txt}
content
\end{filecontents}
\newbox\savebox% from vldb.cls - comment to prevent error

\textattachfile[color=blue]{file.txt}{click to open}
\end{document}

错误:

pdfTeX error (ext1): \pdfxform cannot be used with a void box. ...hfile[color=blue]{file.txt}{click to open}

我有什么办法可以解决这个问题?如果需要,我可以请求更改 cls。但是,我更喜欢不需要更改 cls 的选项。

答案1

好吧,如果该类使用了 latex 命令,\newsavebox它就会出现错误,因此避免重新定义\savebox

你可以尝试

\let\orisavebox\savebox
\documentclass{vldb}
\let\savebox\orisavebox

相关内容