\noindent{\textbf{\textswab{\huge{\emph{Schwabacher}}}}} \vskip 25pt 

\vskip 25pt
\noindent{\textbf{\textswab{\huge{schwabacher font}}}}

which produces

enter image description here

Notice on the first line the close proximity of the c and the h. An uncareful glance might suggest that we do not have c followed by h but rather a d followed by a large misplaced comma.

I was easily able to ameliorate this by using {h} instead of h; the effect of which is displayed on the second line.

However, in the case of schwabacher font I so far have not been able to get the lower case s to resemble a common s; I have been able to do so in the past using a technique similar to the one described above for h (it might have been with pgothic), but I have not had success with it in this case.

QUESTION: Using the Schawacher font, how may I have a lower case s resemble such, and not the type of s one would expect to see, in say, C. F. Gauss' autograph?

Thank you.

  • 8
    note that it's typographically incorrect to have a short s other than at the end of a word or morpheme; also the "ch" ligature shouldn't be broken up (unless it spans a morpheme border, as in @Davislor's example publichouse).
    – Robert
    Jul 27, 2021 at 21:51
  • I am still wondering why a "long s" and "f" are so extremely similar ini Fraktur fonts. Often I can distinguish them only by very careful inspection or from context. Aug 3, 2021 at 23:49

3 Answers 3


For some reason, this works. I was inspired by this question: selnolig-package and round s (s:) in fraktur (yfonts). The two techniques shown arise, one from the cited question, the other from the cited answer.

\noindent{\textbf{\textswab{\huge{\emph{Schwabacher}}}}} \vskip 25pt 

\vskip 25pt
\noindent{\textbf{\textswab{\huge{s:chwabacher font}}}}
\vskip 25pt
\noindent{\textbf{\textswab{\huge{\rounds chwabacher font}}}}

enter image description here

From the yfonts package manual (https://ctan.mirrors.hoobly.com/macros/latex/contrib/yfonts/yfonts.pdf)

enter image description here

Approximate translation:

2.3.3 Long and round s

The so-called closing s, which is required for correct typography in the blackletter script, is entered as the ligature s: just as in the macro-package oldgerm.

  • Thank you again for a very helpful answer. Jul 27, 2021 at 18:22
  • 2
    Word-boundary ligatures in TeX can be a bit weird. A bigger challenge is to typeset a long long s. I ran into this issue some years ago when working on a Metafont Arabic font. I had set things up so that, e.g., ب would be typist ﺑ at the beginning of a word, ﺒ in the middle of a word (this was the actual character at the input coding) ﺐ at the end of a word and ﺏ isolated (a little more complicated than that since after ا the initial form should be used). Unfortunately, when I would print a font table, even though it was requesting characters via \char, my characters all became ب or ﺐ
    – Don Hosek
    Jul 27, 2021 at 18:31
  • 1
    @DonHosek I would say "it's all Greek to me", but that would be misleading in this context. Jul 27, 2021 at 18:34
  • @StevenB.Segletes Δεν μιλάς ελληνικά;
    – Don Hosek
    Jul 27, 2021 at 18:37
  • @DonHosek No, but Google translate does. Αμήν!! Jul 27, 2021 at 18:38

The yswab font has a bunch of ligatures, that we can inspect with tftopl yswab

   (LABEL C f)
   (LIG C f O 204)
   (LABEL C s)
   (LIG O 72 O 215)
   (LIG C s O 201)
   (LIG C t O 202)
   (LIG C z O 32)
   (LIG C f O 203)
   (LABEL O 42)
   (LIG C a O 212)
   (LIG C e O 221)
   (LIG C o O 232)
   (LIG C u O 237)
   (LIG C s O 32)
   (LABEL O 140)
   (LIG O 140 O 134)
   (LABEL O 47)
   (LIG O 47 O 42)
   (LABEL O 55)
   (LIG O 55 O 173)
   (LABEL O 173)
   (LIG O 55 O 174)
   (LABEL O 52)
   (LIG C a O 211)
   (LIG C e O 220)
   (LIG C o O 231)
   (LIG C u O 236)
   (LABEL C c)
   (LIG C h O 205)
   (LIG C k O 206)

(I have omitted the KRN instruction for the sake of brevity, as they're mostly irrelevant to the topic). What does this mean?

  1. f followed by f prints the glyph found at slot '204 (octal)
  2. s followed by colon (octal '72) prints the glyph found at slot '215
  3. s followed by s → slot '201
  4. s followed by t → slot '202
  5. s followed by z → slot '32
  6. s followed by f → slot '203
  7. double quote (octal '42) followed by a → slot '212
  8. double quote followed by e → slot '221
  9. double quote followed by o → slot '232
  10. double quote followed by u → slot '237
  11. double quote followed by s → '32
  12. back quote (octal '140) followed by back quote → slot '134
  13. apostrophe (octal '47) followed by apostrophe → slot '42
  14. hyphen (octal '55) followed by hyphen → slot '173
  15. endash (slot '173) followed by hyphen → slot '174
  16. asterisk (octal '52) followed by a → slot '211
  17. asterisk followed by e → slot '220
  18. asterisk followed by o → slot '231
  19. asterisk followed by u → slot '236
  20. c followed by h → slot '205
  21. c followed by k → slot '206

Here's the font table so you can see the correspondence between slots and glyphs.

enter image description here

and here's another representation of the same:

enter image description here

The ligatures 7–11 are consistent with the standard babel way of specifying the umlaut. The ligatures 16–19 provide an alternative shape of the umlaut (a small “e” above the character). The quotes and dashes are standard TeX ligatures, added for consistency (but note that the opening and closing quotes are German style).

So, for the “short s” you have to type s:; if you don't like the “ch” ligature, type c\/h

enter image description here

On the other hand, reading Fraktur/Schwabacher is supposed to be difficult. ;-) See the difference between ss and sf.


You can use the blacklettert1 version of the Old German fonts to be able to use standard LaTeX commands. In particular, it enables breaking ligatures up with \/, \" for umlauts and \ss for eszett.

It also lets you type your source file in German that a text editor can understand. (I’ve tested with UTF-8, but it should also work with older encodings such as Latin-1.)


\DeclareFontFamily{T1}{yswab}{\hyphenchar \font =127}
   <-> tswab



schwabacher font

s\/chwabacher font

füße f\"u{\ss}e



Schwabacher sample

You could, instead of setting up a yswab font family, define \newcommand\swabfamily{\usefont{T1}{ygoth}{m}{sl}}. This uses the substitution declared in t1ygoth.fd, although I personally don’t consider declaring Schwabacher the “slanted” face of another family to be helpful.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.