From a8486e833f61f674d083a8587cbdd2594260e70c Mon Sep 17 00:00:00 2001 From: "C.W. Betts" Date: Tue, 14 Jan 2025 15:41:19 -0700 Subject: [PATCH] We only need to register the font once. --- Common/Render/Text/draw_text_cocoa.mm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/Common/Render/Text/draw_text_cocoa.mm b/Common/Render/Text/draw_text_cocoa.mm index 386e18fa6e..206665cbe3 100644 --- a/Common/Render/Text/draw_text_cocoa.mm +++ b/Common/Render/Text/draw_text_cocoa.mm @@ -46,11 +46,16 @@ public: } void Create() { + // Register font with CoreText + // We only need to do this once. + static dispatch_once_t onceToken; + dispatch_once(&onceToken, ^{ + NSURL *fontURL = [PPSSPP_FONT_BUNDLE URLForResource:@"Roboto-Condensed" withExtension:@"ttf" subdirectory:@"assets"]; + CTFontManagerRegisterFontsForURL((CFURLRef)fontURL, kCTFontManagerScopeProcess, NULL); + }); // Create an attributed string with string and font information CGFloat fontSize = ceilf((height / dpiScale) * 1.25f); INFO_LOG(Log::G3D, "Creating cocoa typeface '%s' size %d (effective size %0.1f)", APPLE_FONT, height, fontSize); - NSURL *fontURL = [PPSSPP_FONT_BUNDLE URLForResource:@"Roboto-Condensed" withExtension:@"ttf" subdirectory:@"assets"]; - CTFontManagerRegisterFontsForURL((CFURLRef)fontURL, kCTFontManagerScopeProcess, NULL); CTFontRef font = CTFontCreateWithName(CFSTR(APPLE_FONT), fontSize, nil); // CTFontRef font = CTFontCreateUIFontForLanguage(kCTFontUIFontSystem, fontSize, nil); attributes = [NSDictionary dictionaryWithObjectsAndKeys: