“LaTeX”徽标存在字距问题且无法正确缩放

“LaTeX”徽标存在字距问题且无法正确缩放

我最近发现该\LaTeX命令在第一个“L”和“A”之间没有正确的字距调整,“A”看起来太细了(就像假小写字母,简单的缩小)。此外,选择字体\tiny大小时徽标无法正确缩放(A 不成比例)。我使用软件包libertine,所以是 Linux Libertine。如何修复这个问题?

\documentclass{article}
\usepackage{libertine}

\begin{document}
\centering
{\tiny\LaTeX}

\LaTeX

{\Huge\LaTeX}
\end{document}

糟糕的 LaTeX 徽标

答案1

metalogo

\documentclass{article}
\usepackage{libertine}

% keep the original for reference
\usepackage{letltxmacro,xpatch}
\LetLtxMacro\oldLaTeX\LaTeX
\LetLtxMacro\oldTeX\TeX
\xpatchcmd{\oldLaTeX}{\TeX}{\oldTeX}{}{\ddt}

\usepackage{metalogo}

\setLaTeXa{\scshape a}
\setlogokern{La}{-.3em}
\setlogokern{aT}{-.1em}
\setlogokern{Te}{-.08em}
\setlogokern{eX}{-.1em}
\setlogodrop{0.33ex}

\begin{document}

{\fontfamily{cmr}\selectfont\oldLaTeX}

\LaTeX

{\tiny\LaTeX}

\end{document}

在此处输入图片描述

答案2

无需深入研究代码,似乎\LaTeX徽标为“A”选择了更小一级的字体大小,因此在遇到时\tiny没有更小的可用级,从而破坏了比例。我认为这是我有史以来最接近在 (La)TeX 系统中发现错误 ;)。小写字母只是那个 A 的合理选择,它非常适合,但它们可能不适用于其他字体。

我定义了一个新命令\myLaTeX,它使用 Linux Libertine 提供的小型大写字母表示“A”,并且字母之间的字距正确。间距取决于字体大小,用于em水平间距和ex垂直间距。如屏幕截图所示,它在不同字体大小下表现良好:

\documentclass{article}
\usepackage{libertine}
\DeclareRobustCommand\myLaTeX{%
    L\kern-.3em%
    \raisebox{.4ex}{\scshape a}\kern-.13em%
    T\kern-.2em%
    \raisebox{-.5ex}{E}\kern-.13em%
    X%
}

\begin{document}
\centering
{\tiny\LaTeX\ \myLaTeX}

\LaTeX\ \myLaTeX

{\Huge\LaTeX\ \myLaTeX}
\end{document}

漂亮的 LaTeX 徽标

或者,包metalogo可以调整许多字体经常需要的 TeX 徽标。可以修复字距和“A”的粗细,但我不确定缩放行为。

答案3

我目前正在编写一个新包flexlogo,用于解决不同字体的这个问题。它尚未在 CTAN 上发布,但任何希望测试它并告知我错误的人都可以联系我:[电子邮件保护]

相关内容