Erro estranho quando unicode-math e hyperref são combinados em xelatex

Erro estranho quando unicode-math e hyperref são combinados em xelatex

A seguir está um MWE para um problema que estou enfrentando:

\documentclass{article}

\usepackage{hyperref}
\usepackage{unicode-math}
\setmathfont{Asana Math}
\begin{document}
\section{$2\times 2$}
$2 \times 2$
\end{document}

Ao compilar isso com xelatex, recebo o seguinte erro:

! Improper alphabetic constant.
<to be read again> 
                   \times 
l.7 \section{$2\times 2$}

Mas o erro desaparece se eu remover a inclusão do pacote hyperref.

Agora, obviamente, eu gostaria de poder usar matemática no cabeçalho de uma seção, e com o pdflatex a compilação é boa (exceto as reclamações de hyperref sobre matemática nos marcadores, que podem ser corrigidas por outros meios).

Então, há algo que estou fazendo de errado com o xelatex?

Responder1

Uma atualização na resposta de Ulrike.

Com hyperref 2012/08/13 v6.83a você pode usar a opção unicode(or pdfencoding=auto) junto com a opção psdextra:

\usepackage[unicode,psdextra]{hyperref}[2012/08/13]

Então, muitos símbolos matemáticos, inclusive, \timessão reconhecidos.

Responder2

Você pode usar \texorpdfstringpara dizer ao hyperref para usar outro texto para os marcadores:

\documentclass{article}

\usepackage{hyperref}
\usepackage{unicode-math}
\setmathfont{Asana Math}
\begin{document}
\section{\texorpdfstring{$2\times 2$}{2\texttimes2}}
$2 \times 2$
\end{document}

informação relacionada