Ниже приведен MWE для проблемы, с которой я столкнулся:
\documentclass{article}
\usepackage{hyperref}
\usepackage{unicode-math}
\setmathfont{Asana Math}
\begin{document}
\section{$2\times 2$}
$2 \times 2$
\end{document}
При компиляции с помощью xelatex возникает следующая ошибка:
! Improper alphabetic constant.
<to be read again>
\times
l.7 \section{$2\times 2$}
Но ошибка исчезает, если я удаляю включение пакета hyperref.
Теперь, очевидно, мне бы хотелось иметь возможность использовать математику в заголовке раздела, и с pdflatex компиляция проходит нормально (за исключением ворчания hyperref по поводу математики в закладках, что можно исправить другими способами).
Так может я что-то не так делаю с xelatex?
решение1
Обновление ответа Ульрики.
С hyperref 2012/08/13 v6.83a вы можете использовать option unicode
(или pdfencoding=auto
) вместе с option psdextra
:
\usepackage[unicode,psdextra]{hyperref}[2012/08/13]
\times
Затем распознаются многие математические символы, в том числе .
решение2
Вы можете использовать \texorpdfstring
команду hyperref, чтобы использовать другой текст для закладок:
\documentclass{article}
\usepackage{hyperref}
\usepackage{unicode-math}
\setmathfont{Asana Math}
\begin{document}
\section{\texorpdfstring{$2\times 2$}{2\texttimes2}}
$2 \times 2$
\end{document}