Palatino 有多种数字版本:Palatino LT Pro、Book Antiqua、TeX Gyre Pagella、Domitian 和 FPL Neu。其中许多版本(包括我正在使用的版本)的以下字符组合存在问题:“A
。这很不好看:
Kerning = On
在添加该选项后问题仍然存在fontspec
;使用该包microtype
也无济于事。
商业版 Palatino LT Pro 和最近的免费版 Domitian 都存在这个问题。那么,我误以为这是一个问题吗?还是说这个问题没有引起大家的注意?
有办法修复这个问题吗?我无法切换到没有此问题的字体版本。
我正在使用以下代码运行 LuaLaTeX:
\documentclass[letterpaper, 12pt, extrafontsizes, oneside]{memoir}
\settypeblocksize{9in}{6.5in}{*}
\setlrmarginsandblock{1in}{1in}{*}
\setulmarginsandblock{1in}{1in}{*}
\checkandfixthelayout
\usepackage[protrusion = true]{microtype}
\usepackage[no-math]{fontspec}
\setmainfont[Kerning = On]{Domitian}
\title{}
\author{}
\date{}
\begin{document}
“H
“A
“E
\end{document}
答案1
答案2
[编辑:刚刚注意到@habba082 已经在评论中提到,这个问题不会发生在 TeX Gyre Pagella 上,而这正是 使用的newpxtext
。不过,我仍然会把这个答案留在这里作为参考。]
我刚刚测试过newpxtext
,并且不存在字距调整问题:
\documentclass{article}
\usepackage{newpxtext}
\begin{document}
“H
“A
“E
\end{document}
newpxmath
此外,它以(或如果您喜欢)的形式提供出色的数学支持。因此,如果您想在 LaTeX 中使用 Palatino,eulerpx
我建议您使用。newpxtext
答案3
这似乎是字体的“特性”:我在 Windows 10 中使用“Palatino Linotype”版本 5.03 和不同的程序(如 BabelPad 或 LibreOffice)也看到了这一点。我猜双引号和 A 之间的字距调整表完全是错误的或缺失的。
出于好奇,我尝试了不同的字体,似乎它们全部使用“稍微激进”的字距调整A下列的“,所以我甚至可能猜测这是一些我不知道的设计原理。
我还在 Inkscape 1.2 中尝试了手动交互式字距调整(左栏是原始字距调整,右栏是“我的品味”):
度量和字距调整
我在 Linux 上找不到实际的字体,但 TrueType 字体“URW Palladio”应该是另一种帕拉蒂诺克隆。首先,对于字母“A”,“左上角”距离“字符的起始处”大约 370 个单位:
而左双引号的左侧距离“字符结束”约有 50 个单位:
因此“A”顶部的总间距约为 420 个单位,几乎是双引号的总可视宽度。
查看该字体的字距调整表,您会发现该对的字距调整校正为 -134,或小于视觉距离的一半。为了进行比较,我添加了流行的“VA”示例,其字距调整校正为 -145。
了解实际使用的字体的确切数字以及 TeX 程序和算法在渲染文本时如何使用这些数字将会很有趣。