我最近才开始使用 TeX,正在重新编写一个遗留的 TeX 作品(书籍,第二版)。我创建了许多 TeX 表(使用 SAS)并对其进行 \input。这些表包含许多 \textunderscore。在我的 pdf 中,它们全部显示为上移点,而不是下划线。添加包 {hyperref} 会导致许多错误,而如果没有该包,这些错误就不会出现。
谁知道可能是什么原因以及该怎么办?
沃纳。
答案1
您使用的是什么字体编码?\textunderscore
除了默认字体编码 OT1 中的打字机字体外,即如果您没有指定或您的安装没有明确指定其他字体编码,则在您获得的字体编码中不可用。但是,它可以通过 T1 字体编码获得。因此,您可以尝试将字体编码明确设置为 T1(\usepackage[T1]{fontenc}
在加载之前添加hyperref
)。
如果这不起作用,您可以尝试使用其他字体,保留 T1 字体编码,例如\usepackage[sc]{mathpazo}
加载 palatino 字体。
如果这不起作用(这很奇怪),请尝试添加
\def\textunderscore{\char\`_}
之后立即添加到您的代码中\usepackage[T1]{fontenc}
。
最后,如果这些都不起作用(如果没有起作用我会感到非常惊讶),latex.ltx 定义\textunderscore
(几乎)如下:
\DeclareTextCommandDefault{\textunderscore}{%
\leavevmode \kern.06em\vbox{\hrule width .3em}}
尝试在文档前言中包含这些行(再次强调,在\usepackage[T1]{fontenc}
加载之后和之前hyperref
)。注意,结果看起来不会那么好,但无论如何,比没有下划线要好!