小写字母“s”在 \textgoth (yfonts, overleaf) 中无法正常工作

小写字母“s”在 \textgoth (yfonts, overleaf) 中无法正常工作

基本上标题是:我需要一个小写的哥特式字体“s”但是\textgoth{s}(使用 Overleaf 上的包yfonts)不能正常工作(检查图像以查看我得到的奇怪结果)。

有人知道如何解决这个问题吗?还有其他包我可以使用吗?

\textgoth{so}(3) 的结果

答案1

字体ygoth在“s”的槽位处有一个“长 s”。最后一个“s”位于槽位(十六进制)处"60,通常是反引号所在的位置。

当使用 书写时ygoth,如果您想要最后一个 s,您可以通过 访问它s:

因此您可以使用\textgoth{s:o},但这很容易出错。这是另一种方法。

\documentclass{article}
\usepackage{amsmath}

\DeclareFontFamily{U}{ygoth}{}
\DeclareFontShape{U}{ygoth}{m}{n}{<->ygoth}{}
\DeclareMathAlphabet{\mathgothinner}{U}{ygoth}{m}{n}

% the final s sits at slot "60 in the font
\DeclareRobustCommand{\mathgoth}[1]{%
  \begingroup
  \mathcode`s="7160
  \mathgothinner{#1}%
  \endgroup
}

\newcommand{\lie}[1]{\operatorname{\mathgoth{#1}}}

\begin{document}

The Lie algebra $\lie{so}(3)$ is interesting.

\end{document}

我将ygoth字体作为数学字母加载,并定义\mathgoth为包装器,其中,在组内部,数学代码s被更改为指向反引号槽。

接下来我根据您的需要定义一个语义包装器,即\lie

在此处输入图片描述

如果您改变主意并决定尝试 AMS \mathfrak,只需注释掉从\DeclareFontFamily到 行的代码\newcommand{\lie},然后添加\usepackage{amsfonts}

\newcommand{\lie}[1]{\operatorname{\mathfrak{#1}}}

要得到

在此处输入图片描述

你可以自由选择。

答案2

我假设您想要输出最后一个 s,而不是一个长 s (U+017F: ſ)。该yfrak包分配了s长 s,因为它比仅出现在单词末尾(或复合词部分末尾,如 Haustür)的最后一个 s 使用得更频繁。

软件包提供的 Readme 文件yfrak(例如,参见在 CTAN) 解释说,您应该使用它s:来访问最后的 s。

因此,对于您的情况,您可以使用以下命令:

\documentclass{article}
\usepackage{yfonts}

\begin{document}

\textgoth{s:o}(3)

\end{document}

在此处输入图片描述


正如评论中所建议的,如果您想在数学模式中使用 fraktur 字母,那么使用或包\mathfrak提供的功能可能是合理的:amsfontsamssymb

\documentclass{article}
\usepackage{amsfonts}

\begin{document}

$\mathfrak{so}(3)$

\end{document}

在此处输入图片描述

相关内容