我想知道是否有办法在 LaTeX 中音译天城体文本。我一直在使用这个很棒的polyglossia
软件包,我能够将 Unicode 天城体文本输入到 LaTeX 中并进行编译。没有问题。但是,我想知道是否有办法让 LaTeX 将 Unicode 天城体字体转换为罗马音译?天城体音译的规则非常标准化,但我还没有看到一个可以在 LaTeX 中进行音译的软件包——这样我就不必每次都对天城体和音译进行调整。
如果有人对在 LaTeX 中执行此操作有任何建议,甚至有 LaTeX 之外的最佳实践,我将不胜感激。
答案1
您可以使用 xetex 输入映射功能。它用于排版音译天城文.另一个例子是羅馬德夫,用于输入unicode音译。我还没有找到任何用于反向转换的映射文件,但修改RomDev 地图走另一条路。
下载文件开发环境地图并使用
teckit_compile DevRom.map
将生成的文件复制DevRom.tec
到 xetex 可以找到的地方并运行texhash
。
使用示例:
\documentclass{standalone}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{sanskrit}
\usepackage{xltxtra}
\usepackage{fontspec}
\setmainfont{Gentium}
\newfontfamily\devanagarifont[Script=Devanagari]{nakula.ttf}
\newfontfamily\devtransl[Script=Roman,Mapping=DevRom]{Gentium}
\begin{document}
\def\devanagarisample{%
उदु ज्योतिरमृतं विश्वजन्यं विश्वानरः सविता देवो अश्रेत् ।
क्रत्वा देवानामजनिष्ट चक्षुराविरकर्भुवनं विश्वमुषाः ॥ १ ॥
प्र मे पन्था देवयाना अदृश्रन्नमर्धन्तो वसुभिरिष्कृतासः ।
अभूदु केतुरुषसः पुरस्तात्प्रतीच्यागादधि हर्म्येभ्यः ॥ २ ॥
}
%\devscript
\noindent\textsanskrit\devanagarisample
\devtransl
\noindent\devanagarisample
\end{document}
输出:
重要的行是
\newfontfamily\devanagarifont[Script=Devanagari]{nakula.ttf}
\newfontfamily\devtransl[Script=Roman,Mapping=DevRom]{Gentium}
其中我们定义用于打印天城文的字体命令polyglossia
和用于打印音译的命令。
如果您希望使用其他音译方法输出,您可以轻松地自己调整映射方法,表格中有几行
U+093D <> U+0027 ;unstyled apostrophe
其中是输入代码,然后是输出代码,分号后面是注释。只需交换输入和输出代码即可。
答案2
是的,我们确实有一个可以自动完成音译的软件包。
尝试韓國包裹。