我正在使用 \amsbook 和 \mathptmx 包。数学模式下所有希腊字母的字体大小比非希腊字母的字体大小大约大 12%。请问是什么控制了每种字体的默认大小?
答案1
恐怕你做不到。至少,不付出大量努力是不行的。
该包mathptmx
确实
\DeclareSymbolFont{letters}{OML}{ztmcm}{m}{it}
如果我们看一下,omlztmcm.fd
我们会发现
\DeclareFontShape{OML}{ztmcm}{m}{it}{<-> zptmcm7m}{}
现在我们可以看看输出vftovp zptmcm7m
,我们看到
(VTITLE )
(FAMILY UNSPECIFIED)
(FACE F MRR)
(CODINGSCHEME TEX MATH ITALIC)
(DESIGNSIZE R 10.0)
(COMMENT DESIGNSIZE IS IN POINTS)
(COMMENT OTHER SIZES ARE MULTIPLES OF DESIGNSIZE)
(CHECKSUM O 21074766077)
(SEVENBITSAFEFLAG TRUE)
(FONTDIMEN
(SLANT R 0.277)
(SPACE R 0.0)
(STRETCH R 0.0)
(SHRINK R 0.0)
(XHEIGHT R 0.440991)
(QUAD R 1.0)
(EXTRASPACE R 0.0)
)
(MAPFONT D 0
(FONTNAME psyro)
(FONTCHECKSUM O 37333711466)
(FONTAT R 1.0)
(FONTDSIZE R 10.0)
)
(MAPFONT D 1
(FONTNAME cmmi10)
(FONTCHECKSUM O 1350061076)
(FONTAT R 1.0)
(FONTDSIZE R 10.0)
)
(MAPFONT D 2
(FONTNAME ptmri8r)
(FONTCHECKSUM O 32105367571)
(FONTAT R 1.0)
(FONTDSIZE R 10.0)
)
一开始和后来
(CHARACTER O 13
(CHARWD R 0.630994)
(CHARHT R 0.4935)
(CHARDP R 0.016992)
(CHARIC R 0.082996)
(MAP
(SETCHAR C a)
)
)
这意味着\alpha
指向a
中的字形psyro
(标准 PostScript 字体符号的倾斜版本)。
您必须zptmcm7m
通过执行以下操作来重建虚拟字体文件
(MAPFONT D 0
(FONTNAME psyro)
(FONTCHECKSUM O 37333711466)
(FONTAT R 0.89)
(FONTDSIZE R 10.0)
)
但所有指标也应相应改变用手,因此的代码\alpha
应该变成
(CHARACTER O 13
(CHARWD R 0.56158)
(CHARHT R 0.439215)
(CHARDP R 0.015123)
(CHARIC R 0.073867)
(MAP
(SETCHAR C a)
)
)
所有其他希腊字母也是如此。
该mathptmx
软件包及其附带的字体本质上是一个临时解决方案,能够利用 20 年前有限的资源模拟 Times 字体。现在,您可以使用
\usepackage{newtxtext}
\usepackage{newtxmath}