Forces one font instance per full name.

This commit is contained in:
2023-11-03 00:24:25 +08:00
parent 7535ce04f5
commit 08a12097a4
2 changed files with 13 additions and 13 deletions

View File

@@ -324,17 +324,14 @@ namespace Cryville.Common.Font {
}
IEnumerable<Typeface> EnumerateTypefaces(List<string> candidates, bool distinctFamily) {
foreach (var candidate in candidates) {
IReadOnlyCollection<Typeface> typefaces1;
if (Manager.MapFullNameToTypeface.TryGetValue(candidate, out typefaces1)) {
foreach (var typeface in typefaces1) {
yield return typeface;
}
if (Manager.MapFullNameToTypeface.TryGetValue(candidate, out var typeface1)) {
yield return typeface1;
}
if (distinctFamily) continue;
IReadOnlyCollection<Typeface> typefaces2;
if (Manager.MapNameToTypefaces.TryGetValue(candidate, out typefaces2)) {
foreach (var typeface in typefaces2) {
if (typefaces1.Contains(typeface)) continue;
if (typeface1 == typeface) continue;
yield return typeface;
}
}