如何使罗马字体文本中的某些字符倾斜(我不想使用斜体编码)?
答案1
纯 TeX 的倾斜字体
纯 TeX 格式定义\tensl
为保存默认 CM 罗马字体的倾斜(非斜体)变体,来自plain.tex
:
\font\tensl=cmsl10 % slanted roman
\tensl
它可以通过或更高级别的命令使用\sl
:
Default font vs.~{\sl slanted font.}
\bye
有关详细信息,请参阅回答的 egreg。
使用 TikZ 倾斜
TikZ 可以与普通 TeX 一起使用,它允许任意倾斜角度:
\input tikz
\def\slant#1#2{%
\tikz[baseline=(X.base), xslant=tan(#1)]
\node[inner sep=0pt, xslant=tan(#1)](X){#2};%
}
Normal, \slant{9.46}{slanted,} \slant{45}{larger slanting,}
\slant{-15}{slanted to the left.}
\bye
答案2
Plain TeX 格式提供\sl
,因此
This is {\sl slanted\/} type
会做。
如果需要“粗体倾斜”,则必须定义字体:
\font\tenslbf=cmbxsl10
\def\slbf{\tenslbf}
(如果需要的话,该定义只是为了可能支持数学模式)。
完整示例:
\font\tenslbf=cmbxsl10
\def\slbf{\tenslbf}
This is {\sl slanted\/} type.
This is {\slbf boldface slanted\/} type.
\bye
以下是对数学的基本支持:
\font\tenslbf=cmbxsl10
\newfam\slbffam
\textfont\slbffam=\tenslbf
\def\slbf{\tenslbf\fam\slbffam}
This is {\sl slanted\/} type.
This is {\slbf boldface slanted\/} type.
${\sl n}\neq{\slbf n}$
\bye