使用巴比伦数字进行页码编号

使用巴比伦数字进行页码编号

我正在尝试使用 Santakku 字体使用巴比伦数字进行页码编号。下面的代码只有在没有该\tableofcontents命令的情况下才能工作。使用它时,会发生以下错误:

! Missing control sequence inserted.
<inserted text> 
                \inaccessible 
l.1 ...\global \c@workm@mctr \c@page \relax \let }

?

我正在使用 MiKTeX Portable 2.9.6361,并使用该Update MiKTex工具进行了更新。

如何解决这个问题并用巴比伦数字建立目录?

谢谢。

%!TEX TS-program = xelatex
%!TEX encoding = UTF-8 Unicode
\documentclass{article}
\usepackage{babyloniannum}
\renewcommand*{\thepage}{%
  \ifcase\value{page}%
    0%
  \else
    \ifnum\value{page}>0 %
       \LARGE\babyloniannum{\value{page}}%
    \else
     0%
    \fi
  \fi
}
\begin{document}
\tableofcontents

\section{My document}\

text

\section{test}\
\newpage
\section{test}\
\newpage
\section{test}\
\newpage
\section{test}\
\newpage
\section{test}\
\newpage
\section{test}\
\end{document}

答案1

该命令不够强大。您应该保护它,以免它在进入目录的过程中中断:

\documentclass{article}
\usepackage{babyloniannum}

\makeatletter
\renewcommand*{\thepage}{%
  \ifcase\value{page}%
    0%
  \else
    \ifnum\value{page}>0 %
       \protect\Large\protect\babyloniannum{\the\c@page}%
    \else
     0%
    \fi
  \fi
}
\begin{document}
\tableofcontents

\section{My document}\

text

\section{test}\
\newpage
\section{test}\
\newpage
\section{test}\
\newpage
\section{test}\
\newpage
\section{test}\
\newpage
\section{test}\
\end{document}

相关内容