Заголовок и псевдокод в algorithm2e отображаются в виде блоков (не отображаются)

Заголовок и псевдокод в algorithm2e отображаются в виде блоков (не отображаются)

Я хочу создать многоязычный документ, polyglossiaв котором кхмерский язык установлен как основной язык, а английский как другой язык. У меня также есть khmer-gloss.ldfдоступный шрифт кхмерский как шрифт по умолчанию. Все псевдокоды отображаются в полях, как на рисунке ниже, и даже заголовок не отображается. Я знаю, что это проблема шрифта, но я новичок в polyglossiaпакетировании. Кто-нибудь знает, как решить эту проблему? Приведенный ниже код является всего лишь примером.

\documentclass{article}
\usepackage{polyglossia}
\usepackage{amsthm}
\usepackage[linesnumbered,ruled]{algorithm2e}

\newfontfamily{\khmerfont}[Script=Khmer,BoldFont={Khmer OS Content},ItalicFont={Khmer OS Content},Scale=0.9]{Khmer OS Content}
\usepackage{fontspec}
\newfontfamily{\K}[Scale=0.90]{Khmer OS Content}
\newfontfamily{\T}[Scale=0.90]{Khmer OS Moul}

\setmainlanguage{khmer}
\setsansfont[Script=Khmer,Scale=0.95]{Khmer OS Content}
\setmonofont[Script=Khmer,Scale=0.95]{Khmer OS Content}
\setotherlanguage{english}

\begin{document}
អាល់កូរីតដើម្បីរកតួចែករួមធំបំផុត (\textenglish{PGCD})។
\begin{algorithm}
\begin{english}
    \SetKwInOut{Input}{\textenglish{Input}}
    \SetKwInOut{Output}{\textenglish{Output}}

    \underline{function Euclid} $(a,b)$\;
    \Input{Two non negative integers $a$ and $b$}
    \Output{$\gcd(a,b)$}
    \eIf{$b=0$}
      {
        return $a$\;
      }
      {
        return Euclid$(b, a mod b)$\;
      }
    \caption{\textenglish{Euclid's algorithm for finding the greatest common divisor of two non negative integers}}
\end{english}
\end{algorithm}

\end{document}

введите описание изображения здесь

Другая проблема, с которой я столкнулся, заключается в том, что команда \mod также не распознается. Если бы я написал это

\eIf{$b=0$}
{
   return $a$\;
}
{
   return Euclid$(b, a \mod b)$\;
}

Я получил ошибку «Неопределенная управляющая последовательность возвращает Eucli$(b, a \mod ...»

Связанный контент