XeLaTeX 与 Beamer 迷你框架不兼容

XeLaTeX 与 Beamer 迷你框架不兼容

最近(大约 5 分钟前)我发现miniframes,如果我使用 XeLaTeX 编译文件,Beamer 外部模板无法正常工作。

具体来说,我尝试编译这个 MWE

\documentclass{beamer}
\usetheme{Ilmenau}
\begin{document}
\section{Section 1}
\subsection{Subsection 1}
\frame{1}\frame{2}\frame{3}
\subsection{Subsection 2}
\frame{4}\frame{5}
\section{Section 2}
\subsection{Subsection 1}
\frame{6}\frame{7}\frame{8}\frame{9}
\section{Section 3}
\subsection{Subsection 1}
\frame{10}\frame{11}
\subsection{Subsection 2}
\frame{12}\frame{13}\frame{14}
\subsection{Subsection 3}
\frame{15}\frame{16}\frame{17}\frame{18}
\end{document}

分别使用 LaTeX、LuaLaTeX 和 XeLaTeX。前两个编译器的小圆圈是可点击的,而第三个编译器则不可点击。(光标在悬停时不会变成手的形状)。同时,三个编译器都生成可点击的(子)部分标题。

我猜 TeX.SX 不是报告错误的好地方。但我不确定这是 XeLaTeX 的还是 Beamer 的。

PS 我正在使用 OS X 10.11.1 和 MacTeX,并且我刚刚同步了我的软件包。

答案1

根据https://github.com/josephwright/beamer/issues/332#issuecomment-300718711问题似乎是,xelatex 中的非文本超链接不起作用 - 通常的迷你框架项目符号是用 绘制的圆圈pgf,因此是非文本。

一个解决方法是将一些文本放置在微型框架的圆圈后面,这样就变得可点击了。

% !TEX TS-program = xelatex

\documentclass{beamer}

\setbeamertemplate{mini frame in current section}
{%
  \visible<0>{\resizebox{0.1cm}{0.1cm}{o}}\kern-0.1cm%
  \begin{pgfpicture}{0pt}{0pt}{0.1cm}{0.1cm}
    \pgfpathcircle{\pgfpoint{0.05cm}{0.05cm}}{0.05cm}
    \pgfusepath{stroke}
  \end{pgfpicture}%
}

\setbeamertemplate{mini frame in current subsection}
{%
  \visible<0>{\resizebox{0.1cm}{0.1cm}{o}}\kern-0.1cm%
  \begin{pgfpicture}{0pt}{0pt}{0.1cm}{0.1cm}
    \pgfpathcircle{\pgfpoint{0.05cm}{0.05cm}}{0.05cm}
    \pgfusepath{stroke}
  \end{pgfpicture}%
}

\usetheme{Ilmenau}
\begin{document}
\section{Section 1}
\subsection{Subsection 1}
\frame{1}\frame{2}\frame{3}
\subsection{Subsection 2}
\frame{4}\frame{5}
\section{Section 2}
\subsection{Subsection 1}
\frame{6}\frame{7}\frame{8}\frame{9}
\section{Section 3}
\subsection{Subsection 1}
\frame{10}\frame{11}
\subsection{Subsection 2}
\frame{12}\frame{13}\frame{14}
\subsection{Subsection 3}
\frame{15}\frame{16}\frame{17}\frame{18}
\end{document}

相关内容