以下代码编译后会生成一个文档,其中只有罗马字体的单词“проба”(第一段)。我怎样才能在其他段落中也包含该单词?
% Compile with luatex
\input{luaotfload.sty}
\font\f=FreeSerif\f
test проба
\par
\sl test проба
\par
\it test проба
\par
\bf test проба
\bye
答案1
在 Plain TeX 中没有字体选择方案。 的含义\bf
是
\fam\bffam \tenbf
前两个标记在数学模式下有意义,而\tenbf
意思是
select font cmbx10
除非您重新定义的含义\tenbf
,否则您将继续选择该cmbx10
字体,当然该字体不包含西里尔字符。
% Compile with luatex
\input{luaotfload.sty}
\font\tenrm=FreeSerif
\font\tenbf=FreeSerifBold
\font\tenit=FreeSerifItalic
\rm % choose the upright font
test проба
%\sl test проба
\it test проба
\bf test проба
\bye
请注意,FreeSerif 没有倾斜变体,但可以伪造:
% Compile with luatex
\input{luaotfload.sty}
\font\tenrm=FreeSerif
\font\tenbf=FreeSerifBold
\font\tenit=FreeSerifItalic
\font\tensl=FreeSerif:+slant=0.2
\rm % choose the upright font
test проба
\sl test проба
\it test проба
\bf test проба
\bye