关于 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刚过好不好,你们两个……回去了!今天都回去了!!)

点赞(14)

评论列表 共有 0 条评论

暂无评论
立即
投稿

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部