summaryrefslogtreecommitdiff
path: root/platform/darwin/src/local_glyph_rasterizer.mm
diff options
context:
space:
mode:
Diffstat (limited to 'platform/darwin/src/local_glyph_rasterizer.mm')
-rw-r--r--platform/darwin/src/local_glyph_rasterizer.mm13
1 files changed, 8 insertions, 5 deletions
diff --git a/platform/darwin/src/local_glyph_rasterizer.mm b/platform/darwin/src/local_glyph_rasterizer.mm
index 78f7d74428..bbbb482969 100644
--- a/platform/darwin/src/local_glyph_rasterizer.mm
+++ b/platform/darwin/src/local_glyph_rasterizer.mm
@@ -65,12 +65,15 @@ public:
}
CTFontRef getFont() {
- if (!fontFamily) {
- return NULL;
- }
-
if (!fontHandle) {
- NSArray<NSString *> *fontFamilyNames = [@(fontFamily->c_str()) componentsSeparatedByString:@"\n"];
+ NSArray<NSString *> *fontFamilyNames = [[NSUserDefaults standardUserDefaults] stringArrayForKey:@"MGLIdeographicFontFamilyName"] ?: @[];
+ if (fontFamily) {
+ fontFamilyNames = [fontFamilyNames arrayByAddingObjectsFromArray:[@(fontFamily->c_str()) componentsSeparatedByString:@"\n"]];
+ }
+ if (!fontFamilyNames.count) {
+ return NULL;
+ }
+
CFMutableArrayRefHandle fontDescriptors(CFArrayCreateMutable(kCFAllocatorDefault, fontFamilyNames.count, &kCFTypeArrayCallBacks));
for (NSString *name in fontFamilyNames) {
NSDictionary *fontAttributes = @{