不允许使用标记(超引用)..删除“\-命令'

不允许使用标记(超引用)..删除“\-命令'

使用 pdflatex 重新编译 tex 文件后,我收到一个奇怪的警告。我认为我以前没有收到过同样的警告,并且不知道文档有任何更改。我在本地安装和 overleaf 上都遇到了同样的错误。

LaTeX Font Info:    Font shape `OMS/cmr/m/n' in size <10> not available         
(Font)              Font shape `OMS/cmsy/m/n' tried instead on input 
line 84.   


Overfull \hbox (2.22221pt too wide) has occurred while \output is active        
[]                                                                              
[]                                                                             



Package hyperref Warning: Token not allowed in a PDF string 
(PDFDocEncoding):   
(hyperref)                removing `\<def>-command' on input line 87.

第 87 行只是 itemized 中的一个 \item。如果我将其注释掉,我会在下一行收到警告。如果我注释整个 itemized 块,我会在稍后收到警告。

序言如下:

\documentclass[review]{elsarticle}

\usepackage{lineno}
\usepackage[hidelinks,breaklinks=true]{hyperref} 
\usepackage[english]{babel}

有任何想法吗?

答案1

谢谢您的回复。“宏”这个词很关键。不幸的是,这可能是一个很特殊的问题。但是,它可能对其他人仍然有用。在这里,它源于我们希望稿件上有两位通讯作者。我们使用的是 Elsevier 模板,它不允许这样做,所以我编写了我们自己的宏,如下所示:

\author[address]{My Name\corref{thecorrespondingauthors}}
\author[address]{The other guy\corref{thecorrespondingauthors}}

\cortext[thecorrespondingauthors]{Corresponding authors: [email protected] (me), [email protected] (other)}

但是,\corref必须位于作者姓名括号之外,如下所示:

\author[address]{My Name}\corref{thecorrespondingauthors}
\author[address]{The other guy}\corref{thecorrespondingauthors}

再次感谢!

答案2

当文本被放入 PDF 书签或信息条目中时,无法定义宏。此外,PDF 查看器不了解 TeX。因此,hyperref尝试过滤掉至少一些非文本的内容。

尝试做一个最小工作示例(MWE)如果您有兴趣,可以更详细地了解导致警告的原因。起点是警告消息中的行号。也许,第 87 行包含一个\section或类似的命令,其标题包含某种定义。

\section有时,和等标题\paragraph会在下一个段落的开头执行。因此,如果\item在第 87 行开始一个新段落,则 section 命令位于该行之前。

作为解决方法,软件包hyperref提供了宏\texorpdfstring{<TeX stuff>}{<replacement for bookmarks>}来用无害文本替换书签中不允许的 TeX 内容。

相关内容