.NET MAUI: Eigene Schriftarten einbinden
Auf einen Blick
| Gilt für | .NET MAUI 8 bis 10 auf Android, iOS, macOS und Windows |
|---|---|
| Bereich | Softwareentwicklung |
| Dauer | ca. 10 Minuten |
| Rechte | Entwicklungsumgebung; Lizenz der Schriftart für App-Einbettung |
| Stand | Oktober 2026 |
Eigene Schriftarten in .NET MAUI einbinden ist deutlich einfacher als früher unter Xamarin: Statt die Schrift je Plattform als Asset bzw. Bundle-Ressource zu hinterlegen und in der Info.plist zu registrieren, legen Sie die Datei einmal in den Ordner Resources/Fonts und registrieren sie in MauiProgram.cs. Danach steht sie auf allen Plattformen unter einem Alias zur Verfügung.

Problem
- Eine eigene Schrift (z. B. die Hausschrift) wird in der App nicht angezeigt; Android, iOS oder Windows fallen auf die Systemschrift zurück.
- In migrierten Xamarin-Apps funktionieren die alten Verfahren (
Typeface.CreateFromAsset,UIAppFonts) nicht mehr wie gewohnt.
Lösung
Schritt 1: Schriftdatei ablegen
Die Datei (.ttf oder .otf) in den Projektordner Resources/Fonts kopieren. Die Projektvorlage enthält bereits den passenden Eintrag, der alle Dateien dort automatisch als MauiFont einbindet:
<ItemGroup>
<MauiFont Include="Resources\Fonts\*" />
</ItemGroup>
In Visual Studio muss die Buildaktion der Datei MauiFont lauten.
Schritt 2: Schrift registrieren
In MauiProgram.cs:
builder
.UseMauiApp<App>()
.ConfigureFonts(fonts =>
{
fonts.AddFont("OpenSans-Regular.ttf", "OpenSansRegular");
fonts.AddFont("Exo-SemiBoldItalic.ttf", "ExoHeadline"); // eigener Alias
});
Der erste Parameter ist der Dateiname, der zweite ein frei wählbarer Alias.
Schritt 3: Schrift verwenden
In XAML:
<Label Text="Willkommen" FontFamily="ExoHeadline" FontSize="24" />
Oder app-weit als Stil in Resources/Styles/Styles.xaml:
<Style TargetType="Label">
<Setter Property="FontFamily" Value="OpenSansRegular" />
</Style>
Im C#-Code: label.FontFamily = "ExoHeadline";
Icon-Fonts nutzen
Icon-Schriften wie Font Awesome oder Fluent UI System Icons werden genauso registriert und über eine FontImageSource als Symbol verwendet:
<Button Text="Speichern">
<Button.ImageSource>
<FontImageSource FontFamily="FluentIcons" Glyph="" Size="20" />
</Button.ImageSource>
</Button>
Hinweise
- Alias statt Dateiname: Für
FontFamilyimmer den Alias ausAddFontverwenden. Der früher unter iOS nötige interne Schriftname entfällt. - Schriftschnitte: Fett und Kursiv werden nicht künstlich erzeugt – jede Variante (Regular, Bold, Italic) als eigene Datei mit eigenem Alias registrieren.
- Lizenz prüfen: Viele Desktop-Schriftlizenzen erlauben das Einbetten in Apps nicht. Frei nutzbar sind z. B. Schriften unter der SIL Open Font License (Google Fonts).
- Neu bauen: Nach dem Hinzufügen einer Schrift die App vollständig neu bauen; bei Problemen die Ordner
binundobjlöschen. - Bei der Umsetzung Ihres Corporate Designs in Apps unterstützt Sie die individuelle Softwareentwicklung von m.a.x. it.
Siehe auch
Links und Quellen
- Microsoft Learn: Schriftarten in .NET MAUI
- Individuelle Softwareentwicklung und App-Entwicklung von m.a.x. it
Über m.a.x. it Die m.a.x. Informationstechnologie AG ist seit über 30 Jahren IT-Partner mittelständischer und großer Unternehmen in München und bietet maßgeschneiderte Lösungen und Services in den Bereichen Cloud, Cybersecurity, Netzwerk, Windows, Linux und Softwareentwicklung. Sie haben eine Frage zu diesem Artikel oder brauchen Unterstützung?
