考虑:http://www.languagegeek.com/algon/cree
我了解所有关于 \XeTex 的知识,但那是用于输入实际的字形(即输入 Cree 字形“ma¨”。
而是:http://www.languagegeek.com/algon/cree可以下载 truetype 字体,但我们只知道编码遵循 Unicode。我想使用拉丁字符输入(如果您不是该语言的母语人士或对语言学感兴趣,这会更有用)。因此,我想定义 \ma = \char[number] = ¨ma¨ 的字形。
但要做到这一点,我没有 \char[number]。
所有用于 tex 字体(ttf2xxxx 等)的转换工具似乎都是针对拉丁编码的。一定有一种方法可以利用 Unicode 映射的知识来创建 \TeX [我在 Mageia Linux 上使用 TeXLive]
答案1
使用 xetex 或 luatex 比使用 pdftex 要容易得多。我在 Windows 上,似乎有一个带有此脚本的 Euphemia 字体(我无法读取,抱歉),所以我希望下面的内容看起来不错。
我从您引用的站点中摘取了几行代码,并使用 xetex 进行设置,首先直接复制字符,其次使用带有 ASCCI 名称的 tex 宏。我只是用 Unicode 名称减去前缀canadian syllablics
并更改前缀(例如west-cree
WC)来生成有效的 TeX 名称。
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Euphemia}
\def\e{^^^^1401}
\def\i{^^^^1403}
\def\o{^^^^1405}
\def\a{^^^^140a}
\def\WCwe{^^^^140d}
\def\WCwi{^^^^140f}
\def\WCwa{^^^^1418}
\def\Facute{^^^^141f}
\def\Fgrave{^^^^1420}
\def\Ftophr{^^^^1422}
\def\Frighthr{^^^^1423}
\def\Fring{^^^^1424}
\def\Fdsvs{^^^^1426}
\def\Fshs{^^^^1428}
\def\pi{^^^^1431}
\def\po{^^^^1433}
\def\pa{^^^^1438}
\def\WCpwa{^^^^1445}
\def\WCp{^^^^144a}
\def\te{^^^^144c}
\def\ti{^^^^144e}
\def\to{^^^^1450}
\def\ta{^^^^1455}
\def\taa{^^^^1456}
\def\WCtwe{^^^^1458}
\def\ke{^^^^146b}
\def\ki{^^^^146d}
\def\ko{^^^^146f}
\def\ka{^^^^1472}
\def\WCkwa{^^^^147f}
\def\ci{^^^^148b}
\def\mi{^^^^14a5}
\def\mo{^^^^14a7}
\def\ma{^^^^14aa}
\def\maa{^^^^14ab}
\def\ni{^^^^14c2}
\def\no{^^^^14c4}
\def\na{^^^^14c7}
\def\se{^^^^14ed}
\def\si{^^^^14ef}
\def\saa{^^^^14f5}
\def\yi{^^^^1528}
\def\yo{^^^^152a}
\def\ya{^^^^152d}
\def\WCywa{^^^^153a}
\def\Syi{^^^^1541}
\def\FS{^^^^166e}
\begin{document}
\raggedright
ᐁᐏᐊᒋᒧᐢᑖᑕᑯᐠ ᐁᑭ ᐃᑖᐸᐦᑕᒫᐣ ᐁᐏᑕᒪᑯᐏᔭᕁ ᐁᑐᑫ ᑕᐣᓯ ᓂᑲᐣ ᐁᐏᐊᑕᔨᐢᐸᔨᐠ ᐊᓄᐦᐨ ᑭᒥᔭᐢᑲᒧᐸᔨᑭ ᐅᒪ
ᑲᒥᔪᐢᑲᒥ ᐏᑭᑎᒪᑭᓇᑯᐏᓯᐤ ᐊᔨᓯᔨᓂᐤ ᐊᐦᐳ ᑲᑯᓯᐟ ᑭᑕᒥᔺᔭᐤ᙮
\bigskip
\hrule
\bigskip
\WCwi\a\ci\mo\Ftophr\taa\ta\ko\Fgrave\space\e\ki\space\i\taa\pa\Fdsvs\ta
\maa\Frighthr\space\e\WCwi\ta\ma\ko\WCwi\ya\Syi\space\e\to\ke\space\ta
\Frighthr\si\space\ni\ka\Frighthr\space\e\WCwi\a\ta\yi\Ftophr\pa\yi\Fgrave
\space\a\no\Fdsvs\Fshs\space\ki\mi\ya\Ftophr\ka\mo\pa\yi\ki\space\o\ma
\space\ka\mi\yo\Ftophr\ka\mi\space\WCwi\ki\ti\ma\ki\na\ko\WCwi\si\Fring\space
\a\yi\si\yi\ni\Fring\space\a\Fdsvs\po\space\ka\ko\si\Facute\space\ki
\ta\mi\WCywa\ya\Fring\FS
\o\ma\space\WCwi\ta\ma\ko\WCwi\si\WCwi\Frighthr\space\ki\WCwi\ta\ma\ti
\na\WCwa\Fring\space\e\WCtwe\ma\ka\Syi\space\ki\ki\se\WCp\space\ka\WCwa\pa
\Fdsvs\ta\ma\Frighthr\FS\space\ki\ki\se\WCp\space\na\Frighthr\ta\space
\ni\ya\ni\Frighthr\space\ti\pa\Fdsvs\i\ka\Frighthr\space\e\a\yi\ta\pi
\ya\Frighthr\space\ma\mi\Syi\space\ta\pi\Ftophr\ko\Fshs\space\e\i\si
\na\ma\Frighthr\space\mi\si\WCwe\ya\pi\space\mi\ta\ta\Fdsvs\Facute\space
\na\na\to\Syi\space\e\i\si\na\WCkwa\Syi\space\pi\te\yi\Syi\space\e\ko
\ta\space\ni\WCwa\pa\ma\Fring\space\a\WCwi\ya\Fgrave\space\na\mo\ya\space
\ni\ni\si\ta\WCwi\na\WCwa\Fring\space\ma\ka\space\taa\pi\Ftophr\ko\Fshs\space
\e\i\si\na\WCwa\Fgrave\space\e\saa\WCpwa\Ftophr\te\yi\Fgrave\space\a
\ni\ma\space
\end{document}
我注意到我缺少了几个字符,规则后的第一行应该与第一行匹配,但希望这展示出一种基本技巧,并且对于能够读懂脚本的人来说会更容易。
答案2
带有图片的评论。
需要澄清的是,Xelatex 不仅仅用于直接输入字符。
在Xelatex中,您可以输入拉丁字符并排版其他字符。
一种方法是使用映射字体,例如,当使用特定字体时,我可以说字母“ke”映射到“ᑫ”。
当其他脚本中没有可用的键盘或学习如何使用它需要时间时,这尤其有用。
\documentclass[12pt]{article}
\usepackage{xcolor}
\usepackage{fontspec}
\setmainfont{Noto Serif}
\newfontface\translitc[Mapping=latin-to-cansyll,Colour=blue]{Noto Sans Canadian Aboriginal}
\begin{document}
\section{Sample}
\Large
ke {\translitc ke} ki {\translitc ki} ko {\translitc ko} ka {\translitc ka }
\end{document}
映射文件如下所示:
; TECkit mapping for TeX input conventions <-> Unicode characters
LHSName "latin-to-cansyll"
RHSName "UNICODE"
pass(Unicode)
; ligatures from Knuth's original CMR fonts
U+002D U+002D <> U+2013 ; -- -> en dash
U+002D U+002D U+002D <> U+2014 ; --- -> em dash
U+0027 <> U+2019 ; ' -> right single quote
U+0027 U+0027 <> U+201D ; '' -> right double quote
U+0022 > U+201D ; " -> right double quote
U+0060 <> U+2018 ; ` -> left single quote
U+0060 U+0060 <> U+201C ; `` -> left double quote
U+0021 U+0060 <> U+00A1 ; !` -> inverted exclam
U+003F U+0060 <> U+00BF ; ?` -> inverted question
; additions supported in T1 encoding
U+002C U+002C <> U+201E ; ,, -> DOUBLE LOW-9 QUOTATION MARK
U+003C U+003C <> U+00AB ; << -> LEFT POINTING GUILLEMET
U+003E U+003E <> U+00BB ; >> -> RIGHT POINTING GUILLEMET
U+006B U+0065 <> U+146B ; ᑫ ke
U+006B U+0069 <> U+146D ; ᑭ ki
U+006B U+006F <> U+146F ; ᑯ ko
U+006B U+0061 <> U+1472 ; ᑲ ka
它是一个带有扩展名的文本文件.map
,以 编译为二进制.tec
文件teckit_compile.exe
,并通过字体的选项.tec
调用该文件。Mapping=