![beamer \titlepage 内的垂直间距,出现“PDF 字符串中不允许使用令牌……”?](https://linux22.com/image/271942/beamer%20%5Ctitlepage%20%E5%86%85%E7%9A%84%E5%9E%82%E7%9B%B4%E9%97%B4%E8%B7%9D%EF%BC%8C%E5%87%BA%E7%8E%B0%E2%80%9CPDF%20%E5%AD%97%E7%AC%A6%E4%B8%B2%E4%B8%AD%E4%B8%8D%E5%85%81%E8%AE%B8%E4%BD%BF%E7%94%A8%E4%BB%A4%E7%89%8C%E2%80%A6%E2%80%A6%E2%80%9D%EF%BC%9F.png)
我试图用垂直间距将单词“Me”与“Prof: My professor”分开,基本上将后者放在新行上。这很有效,但我收到了警告:
包 hyperref 警告:PDF 字符串 (Unicode) 中不允许使用标记:(hyperref)在输入行 31 中删除“\vskip”。
我应该关心吗?如何消除警告,同时保持垂直间距?
% titlepage settings
\title[My title]{My long title}
\author[Me]{Me \vskip25pt \footnotesize Prof: My professor}
\institute{University of Foo\\My title}
\date{18 luglio 2013}
答案1
某些标记不允许出现在书签中:\vspace
例如,由于书签只有一行,因此命令在其中没有意义。
为了解决这个问题,hyperref
提供了\texorpdfstring
两个参数:第一个参数是你想要 TeX 排版的内容,第二个参数是书签的替代品。
所以
\author{Me\texorpdfstring{\\[25pt]\footnotesize}{}Prof: My professor}
应该做你想做的事。
另一个用例是,如果标题包含数学公式,比如
\section{A proof that $\pi$ is rational}
这会使书签混乱;在这种情况下,你可以输入
\section{A proof that \texorpdfstring{$\pi$}{pi} is rational}
所以你给了书签一个便宜的替代品。