参考这个旧帖子: 正文中仅使用旧式数字,其他情况使用内衬数字,我想知道如何设置仅用于脚注的上标内衬数字(在正文内的脚注编号和页脚中)。请注意,我的字体有真正的 .superior 字形,即使我设置了,它们也不会使用
\textsuperscript
但只有我写
{\addfontfeatures{VerticalPosition=Superior}<number>}
这是一个 MWE:
\documentclass[a4paper,12pt]{article}
\usepackage{fontspec}
\usepackage[english]{babel}
\babelfont[english]{rm}[Ligatures=TeX,Numbers={Proportional,OldStyle}]{Garamond Premier Pro}
\frenchspacing
\begin{document}
To be\footnote{xxx}, or not to be\footnote{xxx}: that is the question\footnote{xxx}:
Whether ‘tis nobler in the mind to suffer\footnote{xxx}
The slings and arrows of outrageous fortune\footnote{xxx},
Or to take arms against a sea of troubles\footnote{xxx},
And by opposing end them\footnote{xxx}? To die: to sleep\footnote{xxx};
No more\footnote{xxx}; and by a sleep\footnote{xxx} to say we end\footnote{xxx}
The heart-ache\footnote{xxx} and the thousand natural shocks\footnote{xxx}
That flesh is heir to, ‘tis a consummation\footnote{xxx}
Devoutly to be wish’d\footnote{xxx}. To die, to sleep\footnote{xxx};
A{\addfontfeatures{VerticalPosition=Superior}163}.
A{\textsuperscript{163}}.
\end{document}
你会注意到,只有当我添加
{\addfontfeatures{VerticalPosition=Superior}{<number>}
上部数字是衬线,并且实际上是字体的上部字形。
我有兴趣将它们设置为所有注释编号中的所有高级衬里,“以符合专业排版的传统 - 出于易读性的原因。
谢谢
PostScriptum 关于字距调整
针对我的字距调整不起作用的问题,我发现了这个线程: 使用 LuaTeX 和 realscripts 调整字距。所以我想问你这是否是唯一的解决方案,即使它非常不方便,因为它使得在字体内部创建所有字距对之后必须在 .tex 文件中添加它们,或者是否有另一种策略可以解决这两个问题:访问真正的上标字形,但也利用字体中原生存在的字距。
无论如何,我不明白在自动编号脚注的情况下如何使用上面线程中指示的解决方案。
关于更新答案
通过一些测试,我意识到一些问题源自我正在使用的字体的内部结构。我对字体本身做了一些修改,现在脚注可以按照您的代码正确显示。不幸的是,出于某种我无法理解的原因,上标数字的字距调整对文本中的脚注数量不起作用。
考虑一下这张图片:
我在数字 1 和句号之间设置了突发性字距调整。它只在特定情况下有效(见最后一行),但不适用于文本内的脚注标记。代码如下:
A{\addfontfeatures{VerticalPosition=Superior}321}.
A{\textsuperscript{321}}.
以防万一,我可以附上字体。>如果我没找错人的话……
答案1
又一次更新
您的字距调整问题是由于脚注标记设置在 内而导致的。这会破坏“A”和“¹”之间的字距调整。请考虑使用下面\hbox
我修补的宏的代码:\realsuperscript
A{\addfontfeatures{VerticalPosition=Superior}1}.
A{\textsuperscript{1}}.
A\footnote{1}.}
当我们展示这个时我们得到:
.\TU/SourceSerifPro(0)/m/n/12 A
.\TU/SourceSerifPro(1)/m/n/12 ¹
.\TU/SourceSerifPro(0)/m/n/12 .
.\glue(\spaceskip) 3.72801 plus 4.19398 minus 0.31067
.\TU/SourceSerifPro(0)/m/n/12 A
.\kern-1.68 (font)
.\TU/SourceSerifPro(0)/m/n/12 ¹
.\TU/SourceSerifPro(0)/m/n/12 .
.\glue(\spaceskip) 3.72801 plus 4.19398 minus 0.31067
.\TU/SourceSerifPro(0)/m/n/12 A
.\penalty 10000
.\hbox(9.936+0.0)x4.44, direction TLT
..\TU/SourceSerifPro(0)/m/n/12 ¹
.\insert253, natural size 12.00003; split(8.4,3.60004); float cost 20000
..\hbox(8.4+3.60004)x390.0, glue set 367.63995fil, direction TLT
...\localpar
....\localinterlinepenalty=0
....\localbrokenpenalty=0
....\localleftbox=null
....\localrightbox=null
...\hbox(8.28+0.0)x18.00003, glue set 14.30003fil, direction TLT
....\glue 0.0 plus 1.0fil minus 1.0fil
....\hbox(8.28+0.0)x3.7, direction TLT
.....\TU/SourceSerifPro(0)/m/n/10 ¹
...\hbox(8.4+0.0)x0.0, direction TLT
....\rule(8.4+0.0)x0.0
...\TU/SourceSerifPro(0)/m/n/10