关于 hyperref 的二三事
“呃……学妹,刚刚听学姐说,她给了你一些关于 LaTeX 的笔记?”(看她好像冷静下来了,我才敢搭话的!)
“那个啊,是有的!其实关于那些警告信息的解决方法大都写在里面了,我刚刚就真的是太着急了。”
“真的有?其实听你刚才提到 Token not allowed in a PDF string,我也时常碰到,又不知道到底是指什么。如果你那儿有什么资料,就太好了。” (研究室众人:……你想找话题追学妹就直说吧……) (作者按:这研究室众人也太闲、内心独白吐槽也太多了!) (研究室众人:不然硕博苦闷的日子怎么过啊……) “我记得有的……在这里。‘一般是因为\section
等标题里有 LaTeX 宏,而这些宏是不能生成 PDF 书签的’……对哦,这种信息只有使用 hyperref
时才有可能出现。”
“学妹,你说慢点,什么跟什么啊?什么 PDF 书签?”
“使用 hyperref
宏包后,生成的 PDF 文件在 Adobe Reader 打开时,介面左方不是有个书签版面吗?\section
、\subsection
的标题都列在那里了,而且一键就可跳到文件里相应的标题,方便得很。”
“对啊,尤其是要前后查阅百来页的毕业论文时,最方便了。”
“所以呢,比如我这个标题 \subsection{Using $m^2$ as parameter}
里刚好有些数学代码,在正文里头显示得很漂亮,可是 PDF 书签是不能表现出来的啊。所以就有了 Token not allowed in a PDF string 这个警告。”
“是这样。那么这是没办法解决的了,只能用学姐说的
silence
屏蔽,眼不见为净了吗?”
“当然有办法啦,学姐教过我,这样:
\subsection{Using \texorpdfstring{$m^2$}{m squared} as parameter}
也就是说,在 tex
模式时,就用 $m^2$
来得到正文标题里漂亮 m^2 的效果;而在 pdf
模式时,就简单直接地用 m squared
这个字串来生成 PDF 书签好了。”
“哦……,明白了。还有一个,我有时候想额外在目录里加一个标题:”
\clearpage\emph{To my parents.}
\addcontentsline{toc}{section}{Dedication}
\clearpage
可是点击 PDF 书签时,却总是去到前一页。”
“这个你得在 \addcontentslines
前加一个 \phantomsection
,设一个‘幻影标题’,好让 hyperref
找到标的的概念。”
“原来如此,原来如此啊!学妹,我觉得你很有解说的天分,我都弄明白了!”
“啊……啊?言过了,呵呵呵,呵呵。”
(研究室众人:……(°ཀ°)1111刚过好不好,你们两个……回去了!今天都回去了!!)
发表评论 取消回复