TeXLive 2012 中的 xeCJK 与 hyperref 冲突

TeXLive 2012 中的 xeCJK 与 hyperref 冲突

hyperref我发现,当包和同时存在时xeCJK,无论按什么顺序,命令、等中的破折号都会引发错误Improper alphabetic constant。这在 TeXLive 2012 中会发生,但在 2011 中不会发生。这是一个 MWE:\section\subsection

%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode

\documentclass{article}    
\usepackage{xeCJK}
\usepackage{hyperref}            % adds clickable links to TOC

\begin{document}
\section{O my swineherd!}
\subsection{Em-dash --- in subsection}
\end{document}

短破折号不会引起同样的问题。

临时权宜之计

\usepackage[unicode,psdextra]{hyperref}

提供https://tex.stackexchange.com/a/69354/3935在这里不起作用;临时权宜之计

\subsection{Em-dash \texorpdfstring{---}{} in subsection}

下列的https://tex.stackexchange.com/a/69338/3935确实有效,但我更想弄清楚根本问题。有什么想法吗?

现在,我已恢复使用 TeXLive 2011。

答案1

我没有收到任何错误。

更新你的 TeX Live 2012在线的(使用tlmgr)而不是一次又一次地重新安装它(旧版本)。

在序言中使用\listfiles以在日志中显示软件包的版本。这是我的:

xeCJK.sty    2012/10/27 v3.0.10
expl3.sty    2012/09/29 v4249
fontspec.sty    2012/05/06 v2.2b
hyperref.sty    2012/10/31 v6.83l

相关内容