我在 Ubuntu 中使用 TexMaker 和 LyX。我想排版泰米尔语/泰卢固语/印地语文本,但到目前为止还没有成功。
请向我推荐一个适用于印度语言(尤其是泰米尔语)的 TeX/LaTeX/变体设置。
编辑:XeTeX 似乎对 Unicode 有很好的支持,而且我读到 TexMaker 也支持 XeteX。我安装了所有 XeTeX、latex-tamil 包等。但还不能让它们工作。
文献中讨论了阿拉伯语或韩语文本。没有提到泰米尔语/印度语文本。
答案1
我将分享我通过反复试验学到的知识。这适用于 Windows 平台。
(我使用给出的材料发现XeLaTeX wiki。
诀窍是
- 使用系统字体目录中提供的字体。(Windows7 为泰米尔语提供了 Latha 字体)和
- 使用 编译源文件
xelatex
,而不是pdflatex
!(对于 Windows 平台,可以使用“Texworks”,因为这是一个 unicode 编辑器。检查您最喜欢的编辑器是否可以以utf-8
格式保存文件)
序言中包括以下内容
\usepackage{fontspec}
\newfontfamily{\lathatam}{Latha}
第一组括号中的声明是在文档正文中调用泰米尔编码的命令,例如:
{\lathatam அய்யா வணக்கம்.}
我使用了微软的印度泰米尔输入法。(下载和安装请参见相关网站。您也可以使用 Google 的方法)。
另一种泰米尔字体编码是“Arial Unicode MS”。要使用此声明
\newfontfamily{\anothertam}{Arial Unicode MS}
在序言中,并通过以下方式使用它:
{\anothertam நான் நலம். நீங்கள் நலமா}
当你用 进行编译时xelatex
,你会看到这些字体之间的区别。
答案2
自 2020 年起,babel
和polyglossia
都支持泰米尔语。这需要 LuaLaTeX 和 HarfBuzz 渲染器(2020 年或更高版本应该可以使用)或 XeLaTeX。该babel
软件包支持更多语言和引擎,而该polyglossia
软件包的用户界面略显简单。
这两种字体都支持任何支持泰米尔语的系统字体。任何可以在文字处理器中使用的字体都可以。
保存为 UTF-8。
使用 Babel
\documentclass{article}
\usepackage[english]{babel}
\usepackage{fontspec}
\babelprovide[import]{tamil}
\defaultfontfeatures{Scale=MatchLowercase}
\babelfont{rm}[Scale=1.0]{Latin Modern Roman}
\babelfont[tamil]{rm}{Latha}
\begin{document}
\foreignlanguage{tamil}{தமிழ் அரிச்சுவடி-தமிழ் மொழி}
\end{document}
此设置适用于在多语言文档中使用少量泰米尔语的常见情况。您还可以将泰米尔语声明为主要语言,或使用 设置泰米尔语部分\begin{otherlanguage}{tamil}...\end{otherlanguage}
。您可以定义\babelfont[tamil]{sf}{Some Font}
以获得无衬线字体和\babelfont[tamil]{tt}{Some Font}
以获得等宽字体。
如果您收到有关字体不支持泰米尔语脚本的泰米尔语的警告消息,这些消息是无害的,但您可以通过添加选项来抑制它们\babelfont[tamil]{rm}[Language=Default]{Some Font}
。发生的情况是所选字体未添加 OpenType 语言标签。
多语
\documentclass{article}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{tamil}
\defaultfontfeatures{Scale=MatchLowercase}
\newfontfamily\tamilfont{Latha}[Script=Tamil]
\begin{document}
\texttamil{தமிழ் அரிச்சுவடி-தமிழ் மொழி}
\end{document}
您还可以将tamil
环境用于部分,并定义\tamilfontsf
和\tamilfonttt
类似于\tamilfont
。
如果您不能使用 XeTeX
如果最后几个坚持者能够增加对 XeTeX(以及未来的 HarfTeX)的支持,那就太好了。由于一些出版商仍然不允许这样做,您可能仍需要依靠 LianTze Lim 的解决方案等变通方法。如果您只需要几个简短的泰米尔语单词或短语,另一种变通方法是使用 XeLaTeX 将它们编译为微型standalone
PDF,然后将 PDF 作为图像插入。
答案3
[2019 年 7 月 7 日添加注释]请忽略此答案,改用 XeLaTeX/LuaLaTeX 和 polyglossia/babel,如 Davislor 的答案中所述。出于历史兴趣,我将把这个答案留在这里。
我能够在 Ubuntu 上使用 LaTeX 排版泰米尔语,方法是安装itrans
并itrans-fonts
通过 synaptic(或 apt-get)安装软件包。它不允许您直接输入泰米尔语,而是必须键入 ASCII 转录,然后使用itrans
命令提示符进行处理,然后对生成的文件运行 (pdf)latex。
假设我有以下文件nandri-pre.tex
:
\documentclass{minimal}
\usepackage[preprocess]{itrans}
\newfont{\tmlb}{wntml12}
\newfont{\tmls}{wntml10}
\hyphenchar\tmlb=-1
\hyphenchar\tmls=-1
#tamilifm=wntml.ifm
#tamilfont=\tmlb
\begin{document}
Hi! {#tamil na^nRi #endtamil}
\end{document}
处理方法如下itrans
:
$ itrans -i nandri-pre.tex -o nandri.tex
然后运行 (pdf)latex nandri.tex
,如果您有更多文本要添加,这当然是需要编辑的文件。