Entstehung von Nekophilia

Nekophilia entstand auf den Wunsch von Melanie Kuhl hin, eine Schriftart in ihrem persönlichen, handschriftlichen Stil für die Verwendung in einem Comic-Projekt nutzen zu können.

Durch die Unterstützung von Philipp Böckmann bei der Digitalisierung und technischen Umsetzung wuchs Nekophilia nach und nach zu einer vollwertigen Schriftart heran und bekam schließlich sogar Emoji-Unterstützung und Emoji-Ligaturen spendiert.

Analoges Zeichendesign

Im ersten Schritt wurden alle grundlegenden Zeichen von Hand geschrieben und anschließend eingescannt. Dieser originale Zeichensatz beinhaltete alle Groß- und Kleinbuchstaben, Ziffern und die gängigsten Sonderzeichen.

Scan der ersten paar Großbuchstaben von Melanie Kuhl

Digitalisierung der Buchstaben

Anschließend wurden alle Buchstaben als Vektorgrafiken in Inkscape nachgezeichnet. Hierbei wurden kleinere Anpassungen vorgenommen, sowie viele abgeleitete Glyphen erstellt, welche nicht zuvor von Hand geschrieben worden waren.

Erstellung des Buchstabens "A" in Inkscape

Erstellung der Schriftart

Nach Abschluss des ersten Glyphensatzes (des lateinischen Großbuchstabenalphabets) begann die Erstellung der Schriftart in Fontforge. Dieser erste Schritt des Erstellens einer Schriftart erwies sich als erstaunlich einfach, doch der Teufel steckte wie üblich im Detail.

Erstellung von Nekophilia in Fontforge

Ergänzung und wiederholte Verbesserung

Nekophilia durchlief diverse Verbesserungs- und Ergänzungsstufen. Nachdem anfangs nur der klassische ASCII-Zeichensatz und die deutschen Umlaute, sowie das Eszett umgesetzt worden waren, folgte schon bald die Erweiterung auf den Zeichenumfang von Windows-1252. Anschließend kamen Emojis, sowie Ligaturen für diese hinzu.

Die Gesichter von Nekophilia in Fontforge

Herausforderungen & Lösungen

Die Erstellung von Nekophilia stellte uns vor einige Herausforderungen. Im Folgenden sollen einige dieser Herausforderungen kurz beschrieben werden, sowie unsere Wege sie zu bewältigen.

Grundsätzliche Lernkurve

Während der Umgang mit Inkscape uns zumindest in Teilen nicht neu war, so war es der Umgang mit einer spezialisierten Software zur Erstellung von Schriftarten wie FontForge schon. Glücklicherweise ist die Nutzergemeinde von FontForge aufgrund der Quelloffenheit des Programms nicht klein und es fanden sich nützliche Tutorials online, welche uns beim Erlernen der Programmfunktionen sehr halfen.

Unterschneidungen in einer handschriftlichen Schriftart

Eine konstante Herausforderung bei der Erstellung von Nekophilia bestand in der korrekten Einstellung aller Unterschneidungen, da es sich um eine handschriftliche Schriftart mit Buchstaben sehr variabler Formen handelt.

Einer anfangs noch paarweisen Einstellung der Unterschneidungswerte folgte nach Erweiterung des Zeichensatzes schon bald eine klassenbasierte Unterschneidungskonfiguration. Dieser Schritt sorgte für mehr Performanz in FontForge und weniger Arbeit beim Einpflegen neuer Glyphen, sowie schnellere Korrekturmöglichkeiten.

Klassenbasierte Unterschneidung in Fontforge

Für das Testen von Zeichenabständen mit der hierfür vorgesehenen Funktion von FontForge galt es, entsprechende Zeichenketten auf schnelle und einfache Weise zu generieren, sobald eine neue Glyphe hinzugefügt wurde.

Überprüfung von Zeichenabständen in FontForge

Zur Generierung dieser Zeichenketten wurde ein kleines Python-Script erstellt, welches hier zur freien weiteren Verwendung veröffentlicht wird:

# Put all the glyphs in here which you plan to configure

fontpool = "ABCDEFGHIJKLMNOPQRSTUVWXYZÄÖÜ" \

           "abcdefghijklmnopqrstuvwxyzäöüß" \

           "0123456789 ?€[]:  # $^!@'`´²³" \

           ";~_&|*/{}.%+§-°,<>()=\\\"‚‘"



# Replacements needed for use in Fontforge

repl_dict = {"/": "slash", "[": "bracketleft",

             "]": "bracketright",

             "^": "asciicircum", "`": "grave",

             "„": "quotedblbase",

             "”": "quotedblleft", "`": "grave",

             "´": "acute", "#": "numbersign",

             "\\": "backslash",

             "‚": "quotesinglbase",

             "‘": "quoteright"}



# Combine all glyphs with each other and

# use replacements for Fontforge if needed

out = [x + y + x for x in fontpool for y in fontpool]

out = [s for t in out for s in t]

out = ["/" + repl_dict[c] if str(c) in repl_dict.keys()

       else c for c in out]



# Generate the file kerning.txt containing all the

# combinations and additionally print them to the console

i = 0

s = ''

with open('kerning.txt', 'w') as writer:

    for e in out:

        s = s + e

        i = i + 1

        if i == len(fontpool * 3):

            i = 0

            print(s)

            print()

            writer.write(s + "\n\n\n")

            s = ''

Durch seine Ausführung erhält man einen Satz an Zeichenketten, welche man anschließend in FontForge auf die korrekten Unterschneidungen testen und bei Bedarf sofort Korrekturen vornehmen kann.

Generierte Zeichenketten zur Überprüfung von Zeichenabständen in FontForge

Veröffentlichung

Nach der privaten Verwendung über einen Zeitraum von gut einem Jahr hinweg und der erfolgreichen Nutzung für das ursprüngliche Comic-Projekt wird Nekophilia mit der Version 1.21 nun zum ersten Mal veröffentlicht.

Aller Voraussicht nach wird sie in Zukunft um weitere Zeichen und Features erweitert werden, sowie kleinere Unterschneidungsanpassungen und Korrekturen erfahren. Solltest Du Wünsche oder Feedback für die weitere Entwicklung von Nekophilia haben, so schreib uns gern eine E-Mail an nekophilia@redneptun.net.

Wir wünschen Dir viel Freude bei der Verwendung von Nekophilia! <3