![在英文文档中添加阿拉伯语文本](https://linux22.com/image/309540/%E5%9C%A8%E8%8B%B1%E6%96%87%E6%96%87%E6%A1%A3%E4%B8%AD%E6%B7%BB%E5%8A%A0%E9%98%BF%E6%8B%89%E4%BC%AF%E8%AF%AD%E6%96%87%E6%9C%AC.png)
我正在尝试将阿拉伯语文本包含在英语文档中(我是新来的 latex 用户),但似乎无法使用 xelatex 或任何类型的 tex 渲染任何阿拉伯语文本。我在 Mac 上使用 texshop 3.51。我无法让这个基本示例工作,它只会在输出 pdf 中显示问号。
\documentclass[12pt]{article}
\usepackage[utf]{arabxetex}
\newfontfamily\arabicfont[Script=Arabic]{Amiri}
\begin{document}
\begin{arab}[voc]
وَهَذِهِ فِقرَةٌ بِالعَرَبِيَة مَعَ كَلِمَة اِنكلِيزِيَة
\end{arab}
\end{document}
我已经将 Amiri(以及 Scheherazade 和 Lateef)下载到 Fontbook 中,如果我在 texshop 中转到 Source->Font->Show Fonts,它们就会显示出来。如果我删除 Amiri 部分,它仍然不起作用。
我能做些什么吗?我查看了这里的其他链接,例如多语种阿拉伯语文本和如何在拉丁文档中写一句话的阿拉伯语文本?但我甚至无法呈现任何这些例子。
非常感谢您的帮助!如果我能让它发挥作用,我会永远爱你。
答案1
这是 TeXShop 文件编码的问题,而不是 XeLaTeX 本身的问题。
在 Sublime Text 中,这对我来说很好用:
% !TEX TS-program = xelatex
\documentclass[12pt]{article}
\usepackage{fontspec}
\newfontfamily\arabicfont{Al Nile}
\begin{document}
\arabicfont وَهَذِهِ فِقرَةٌ بِالعَرَبِيَة مَعَ كَلِمَة اِنكلِيزِيَة
\end{document}
(抱歉,我没有好的阿拉伯字体,我只能使用 Mac 默认的字体)
TeXShop 的设置允许更改编码,但我似乎无法使其工作。(请参见此处,我选择了“阿拉伯语、希伯来语、波斯语”并将编码更改为 Unicode UTF-8,这在理论上应该可以工作,但 TeXshop 重新打开带有问号的文件,因此将问号传递给 XeLaTeX。
我会继续关注这个问题,但目前的解决方法是,您可以使用不同的文本编辑器,然后terminal
使用在内部进行编译xelatex [filename]
。
知道了!
关键是按照我在上面的屏幕截图中所做的那样应用设置,重新启动 TeXShop,然后使用正确的编码明确地重新打开文件,然后粘贴阿拉伯语。
打开文件时,请确保此处也设置了编码:
然后,它就起作用了!
对于新文件,请确保在此处设置编码:
注意:这些示例都使用我上面的简化的 MWE,而不是@cfr 的建议。