如何使用纯 TeX(即不使用“第三方”宏包,如 LaTeX)将非拉丁字母(例如西里尔字母)输出到文档中?
答案1
不推荐的方式:这是古代历史
这是我使用过的最古老的方法,借助拉丁音译和 AMS 字体,请参阅第 15 页及以上http://mirrors.rit.edu/CTAN/fonts/amsfonts/doc/amsfndoc.pdf。我附上了 PDF 文件的片段pdftex
和预览。
我使用 Wadalab 项目的字体来排版几个 CJK 字符。现在我会使用xetex
或luatex
UTF context
-8 编码输入。
% run: tex or pdftex mal-non-latin.tex
\nopagenumbers
\input cyracc.def
\font\tencyr=wncyr10
\def\cyr{\tencyr\cyracc}
\cyr
Nezna\u\i ka --- literaturny\u\i\ personazh, opisyvayemy\u\i\ kak predstavitel\cprime\ plemeni malen\cprime kikh chelovechkov --- korotyshek, gero\u\i\ posvyashch\"enno\u\i\ ego priklyucheniyam trilogii Nikolaya Nosova i e\"e mnogochislennykh prodolzheni\u\i. Chlen Kluba ves\"elykh chelovechkov.
\par
\font\mjap=dmjhira \mjap
\char"15\char"48\char"06\char"2A\char"49
\bye
更新:这是在引擎中加载 OTF 文件的一次快速测试luatex
。
\nopagenumbers
\input{luaotfload.sty}
\def\mytest{This is a test. Това е тест.\par}
\font\myfont=FreeSerif.otf % a font from the GNU FreeFont family
\myfont\mytest
\font\myfont=LinLibertine_R.otf % a font from the Linux Libertine family
\myfont\mytest
\font\myfont=cmunrm.otf % a font from the Computer Modern family
\myfont\mytest
\bye
答案2
cyrchars.tex
您可以从 csplain 包中的文件中获得启发。
\input cyrchars
Normal text and текст на русском языке.
{\it Normal text in italics and текст на русском языке}.
{\bf Normal text in bold and текст на русском языке}.
\end
该cyrchars.tex
宏使用 encTeX 根据编码自动选择字体。 pdfTeX 是应该的,csplain
或pdfcsplain
是推荐的格式。 您可以尝试命令pdfcsplain document
。