平均能量损失

平均能量损失

我正在尝试排版一份包含阿拉伯语、中文(以及其他一些语言)的多语言文档。在下面的 MWE 中,阿拉伯语单词 الشمس 表示“sun”,但没有显示(可能是因为babel未加载该包)。但是,如果我babel使用该arabic选项加载该包,则会收到一条错误消息

! LaTeX Error: Command \I already defined.
               Or name \end... illegal, see p.192 of the manual.

See the LaTeX manual or LaTeX Companion for explanation.
Type  H <return>  for immediate help.
 ...                                              
                                                  
l.155 ...ing\else\ArabicEncoding\fi\beginL#1\endL}
                                                  %
?

知道如何解决这个问题吗?我应该补充一点,出于向后兼容的原因,我必须使用 pdftex 引擎来编译这个特定的文档。

平均能量损失

\documentclass[border=2pt]{standalone}

\usepackage[UTF8]{ctexcap}
% \usepackage[arabic]{babel}

\begin{document}
% English: 
Sun
% Arabic: 
الشمس
% \foreignlanguage{arabic}{الشمس}
% Chinese: 
太阳    
\end{document}

在此处输入图片描述

答案1

arabic.ldf 非常旧,与 unicode 引擎不兼容。使用 lualatex,您可以使用类似这样的代码:

\documentclass[border=2pt]{standalone}

\usepackage[UTF8,fontset=fandol]{ctexcap}
\usepackage[bidi=basic,english]{babel}
\babelprovide[onchar=fonts ids]{arabic}
\babelfont[arabic]{rm}[Scale=1.5,Renderer=Harfbuzz]{Amiri}
\begin{document}
% English:
Sun
% Arabic:
الشمس
% \foreignlanguage{arabic}{الشمس}
% Chinese:
太阳
\end{document}

在此处输入图片描述

相关内容