Problem mit Polyglossie und Hyperref

Problem mit Polyglossie und Hyperref

Hier ein Minimalbeispiel, ich weiß nicht wo das Problem ist?

\documentclass[12pt,a4paper,openany]{book}


%%%%%%%%%%%%%%%%%%%
\usepackage{fancyhdr}
\pagestyle{fancy}

\usepackage{hyperref}
\hypersetup{
    colorlinks=true,
    linkcolor=blue,
    filecolor=magenta,
    urlcolor=cyan,
    citecolor=blue
}


%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{polyglossia}
\setmainlanguage[numerals=maghrib]{arabic}
\setotherlanguage{english}
\newfontfamily\arabicfont[Script=Arabic,Scale=1.1,AutoFakeSlant=-0.03]{Amiri}
\setsansfont[Script=Arabic,Scale=1.1]{Amiri}

\makeatletter
\pretocmd{\@chapter}{\begingroup \renewcommand{\thechapter}{{\words{chapter}}}}{}{}
\apptocmd{\@chapter}{\endgroup}{}{}
\makeatother




%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%  MACRO FOR LITERAL NUMBERING %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newcommand\words[1]{\expandafter\xwords\csname c@#1\endcsname}
\def\xwords#1{\ifcase#1\or
الأول\or
الثاني\or
الثالث\or
الرابع\or
\else
I need more words\fi}

\makeatletter
\patchcmd{\@makechapterhead}{\thechapter}{\words{chapter}}{}{}
\makeatother





%%%%%%%%%%%%%%%%%% REDEFINES \THECHAPTER IN CONTENTS
\makeatletter
\pretocmd{\@chapter}{\begingroup \renewcommand{\thechapter}{{\words{chapter}}}}{}{}
\apptocmd{\@chapter}{\endgroup}{}{}
\makeatother


\usepackage[Glenn]{fncychap}
\ChNumVar{\Large}% Dimension of the number of the chapter in the first page... instead of the default...\ChNumVar{\Huge}


\begin{document}

\chapter{واحد}

\end{document}

Antwort1

Dies kann eine passende Antwort sein oder auch nicht, aber soweit ich das sehe (als jemand, der kein Arabisch versteht), ergibt es die gleiche Ausgabe wie Ihr MWE ohne hyperref(einschließlich des Inhaltsverzeichnisses und der Kopfzeilen).

Ich bin auf die Verwendung von und LuaLaTeX umgestiegen, babelum die Probleme mit der Ladereihenfolge zu umgehen bidi. Und habe gepatcht \Hy@org@chapter. Dies ist das Originalmakro \@chapter, das hyperrefin sein eigenes neues eingebettet wird \@chapter.

\documentclass[12pt,a4paper,openany]{book}
\usepackage{etoolbox}
\usepackage[nil,bidi=basic-r]{babel}
\babelprovide[import,main]{arabic}
\babelprovide[import]{english}
\babelfont[arabic]{rm}[Scale=1.1, AutoFakeSlant=-0.03]{Amiri}
\babelfont[arabic]{sf}[Scale=1.1]{Amiri}
\usepackage[Glenn]{fncychap}
\ChNumVar{\Large}
\usepackage{fancyhdr}
\pagestyle{fancy}
\usepackage{hyperref}
\hypersetup{
  colorlinks=true,
  linkcolor=blue,
  filecolor=magenta,
  urlcolor=cyan,
  citecolor=blue
}
\newcommand\words[1]{\expandafter\xwords\csname c@#1\endcsname}
\def\xwords#1{%
  \ifcase#1\or
  الأول\or
  الثاني\or
  الثالث\or
  الرابع\or
  \else
  I need more words\fi}    
\makeatletter
\pretocmd{\Hy@org@chapter}
  {\begingroup \renewcommand{\thechapter}{{\words{chapter}}}}
  {}
  {}
\apptocmd{\Hy@org@chapter}
  {\endgroup}
  {}
  {}
\patchcmd{\@makechapterhead}
  {\thechapter}
  {\words{chapter}}
  {}
  {}
\makeatother    
\begin{document}    
\chapter{واحد}
\end{document}

MWE-Ausgabe

verwandte Informationen