SOUL 无法与“ě”字符配合使用

SOUL 无法与“ě”字符配合使用

我有以下代码来soul允许带有降部的字母加下划线。

\usepackage{xcolor}
\usepackage{xparse}
\usepackage{soul}

    \makeatletter
    \ExplSyntaxOn
    \cs_new:Npn \white_text:n #1
      {
        \fp_set:Nn \l_tmpa_fp {#1 * .01}
        \llap{\textcolor{white}{\the\SOUL@syllable}\hspace{\fp_to_decimal:N \l_tmpa_fp em}}
        \llap{\textcolor{white}{\the\SOUL@syllable}\hspace{-\fp_to_decimal:N \l_tmpa_fp em}}
      }
    \NewDocumentCommand{\whiten}{ m }
        {
          \int_step_function:nnnN {1}{1}{#1} \white_text:n
        }
    \ExplSyntaxOff
    
    \NewDocumentCommand{ \varul }{ D<>{5} O{0.2ex} O{0.1ex} +m } {%
    \begingroup
    \setul{#2}{#3}%
    \def\SOUL@uleverysyllable{%
       \setbox0=\hbox{\the\SOUL@syllable}%
       \ifdim\dp0>\z@
          \SOUL@ulunderline{\phantom{\the\SOUL@syllable}}%
          \whiten{#1}%
          \llap{%
            \the\SOUL@syllable
            \SOUL@setkern\SOUL@charkern
          }%
       \else
           \SOUL@ulunderline{%
             \the\SOUL@syllable
             \SOUL@setkern\SOUL@charkern
           }%
       \fi}%
        \ul{#4}%
    \endgroup
    }
    \makeatother

我曾尝试将其用于拼音音节 xiě 但它就是不打印 ě ,结果如下:

\begin{document}
\varul{xiě}
\end{document}

在此处输入图片描述

代码在字符集上工作正常,áàéèíìóòú}但在 上却不行āǎēěīǐōǒūǔǖǘǚǜ。这或多或少是有道理的,我通常只是假设它是一个ASCII东西或某样东西。然而,它对真正的中文工作正常,如下所示:

\begin{document}
\varul{绿} se pronuncia \varul{lǜ}
\end{document}

在此处输入图片描述

这是为什么?我该如何解决?谢谢!

相关内容