使用 PiTeX 的普通 LuaTeX Unicode 字母

使用 PiTeX 的普通 LuaTeX Unicode 字母

我正在尝试fonts.ptxlua隔离皮泰克斯使用 Open/True-Type 字体雅克斯界面。我可以正确加载字体;但是,当我尝试排版一些校样时,我发现现在 LuaTeX 会在 ASCII 边界上方的任何位置将 UTF8 输入解释为单独的字符(即 > \char 127),并且我希望它能够将 UTF8 输入干净地映射到相应的字体插槽中。似乎 LuaTeX 现在逐个读取 UTF8 字节,并且不会将大写字符映射到相应的插槽中。

\input luatex85.sty
\input pitex
\setfont \mainfont:
   name = "Tempora"
   size = 10pt
   bold = Semi
   big  = 50pt

\section{Ordalía tipográfica}

ἐν ἀρχή ἧν ὁ λόγος

\bye

LuaTeX 输出

使用 type1 字体运行相同的输入会将拉丁文本排版为 TeXnANSI,而希腊文本则会被干净地丢弃,这正如预期的那样。

\input luatex85.sty
\input plnfss
\let\section\textbf
\usefont{LY1}{ptm}{m}{n}
\section{Ordalía tipográfica}

ἐν ἀρχή ἧν ὁ λόγος

\bye

PDFTeX 输出

字形在那里,因为如果我用 加载字体,它们就会显示出来\luaotfload。我遗漏了哪些细节?

答案1

Ulrike Fischer 和 David Carlisle 在评论中解决了这个问题,因此我会将解决方案迁移到社区 Wiki 答案。

问题在于,它pitex假设源是 Latin-1,并在输入缓冲区上执行 Latin-1 到 UTF-8 的转换。禁用“-- Latin1 到 UTF-8”部分中的函数可使 UTF-8 输入正常工作。

pitex自 2011 年以来一直未更新,LuaTeX 也自那时起发生了很大变化。请仔细考虑是否要尝试自行修补并使用它。

相关内容