列表的阿拉伯字体

列表的阿拉伯字体

目前,我正在使用 Listings 包将我的 XML 文本插入文档中。

例如代码:

\begin{lstlisting}
   <Product Title="نوکیا" Type="گوشی">
\end{lstlisting}

这里的问题是房源不支持阿拉伯字体。因此无法显示“نوکیا”和“گوشی”。有什么解决方案可以让 Listings 包支持阿拉伯字体吗?

答案1

解决方案之一是这样的。首先像这样定义你的 listingstyle\begin{document}

如果您的主要语言是波斯语,那么:

\documentclass[11pt]{book}
\usepackage{listings}
\usepackage{xepersian}

\lstdefinestyle{MyXML}{
      language=XML,
      escapeinside={\%*}{*)},
      morekeywords={encoding,
        xs:schema,xs:element,xs:complexType,xs:sequence,xs:attribute}
}

然后在您的列表代码中使用此代码

مقاله من فارسی می‌باشد
\begin{latin}
\begin{lstlisting}[style=MyXML]
   <Product Title="%*\rl{نوکیا}*)" Type="%*\rl{گوشی}*)">
\end{lstlisting}
\end{latin}
انتهای مقاله

这是我的输出

在此处输入图片描述

如果您的主要语言是英语,那么:

\documentclass[11pt]{article}
\usepackage{setspace}
\usepackage{listings}

\usepackage{fontspec}
\usepackage{polyglossia}

\setmainlanguage{english}
\setotherlanguage{farsi}

\newfontfamily\farsifont[Script=Arabic,Scale=1.1]{Scheherazade}


\lstdefinestyle{MyXML}{
      language=XML,
      escapeinside={\%*}{*)},
      morekeywords={encoding,
        xs:schema,xs:element,xs:complexType,xs:sequence,xs:attribute}
}

然后在您的文章中:

My Article is In English Language

\begin{lstlisting}[style=MyXML]
    <Product Title="%*\textfarsi{نوکیا}*)" Type="%*\textfarsi{گوشی}*)">
\end{lstlisting}

End of Article

和输出

在此处输入图片描述

答案2

我认为用包创建文档很容易。阿拉伯语单词/句子在和arabtex之间输入。因此,我们需要为包定义字符。\<>escapeinsidelistings

\documentclass{article}
\usepackage{arabtex}
\usepackage{utf8}
\usepackage{listings}

\lstset{escapeinside=``}

\begin{document}
    \setcode{utf8}

    \begin{lstlisting}
       <Product Title="`\<نوکیا>`" Type="`\<گوشی>`">
    \end{lstlisting}

\end{document}

在此处输入图片描述

相关内容