diff --git a/src/Avalonia.Base/Media/FontManager.cs b/src/Avalonia.Base/Media/FontManager.cs index af7a58dbe1..4d14e57a32 100644 --- a/src/Avalonia.Base/Media/FontManager.cs +++ b/src/Avalonia.Base/Media/FontManager.cs @@ -143,11 +143,6 @@ namespace Avalonia.Media { var source = key.Source; - if (source.Scheme == SystemFontScheme) - { - return SystemFonts.TryGetGlyphTypeface(familyName, typeface.Style, typeface.Weight, typeface.Stretch, out glyphTypeface); - } - if (!source.IsAbsoluteUri) { if (key.BaseUri == null) @@ -158,6 +153,11 @@ namespace Avalonia.Media source = new Uri(key.BaseUri, source); } + if (source.Scheme == SystemFontScheme) + { + return SystemFonts.TryGetGlyphTypeface(familyName, typeface.Style, typeface.Weight, typeface.Stretch, out glyphTypeface); + } + if (TryGetFontCollection(source, out var fontCollection) && fontCollection.TryGetGlyphTypeface(familyName, typeface.Style, typeface.Weight, typeface.Stretch, out glyphTypeface)) {