ohmu
·
2026-10-15
1#include "common/font.h"
2#include "common/io.h"
3#include "font.h"
4
5#import <AppKit/NSFont.h>
6
7static void generateString(FFFontResult* font)
8{
9 if(font->fonts[0].length > 0)
10 {
11 ffStrbufAppend(&font->display, &font->fonts[0]);
12 ffStrbufAppendS(&font->display, " [System]");
13 if(font->fonts[1].length > 0)
14 ffStrbufAppendS(&font->display, ", ");
15 }
16
17 if(font->fonts[1].length > 0)
18 {
19 ffStrbufAppend(&font->display, &font->fonts[1]);
20 ffStrbufAppendS(&font->display, " [User]");
21 }
22}
23
24const char* ffDetectFontImpl(FFFontResult* result)
25{
26 ffStrbufAppendS(&result->fonts[0], [NSFont systemFontOfSize:12].familyName.UTF8String);
27 ffStrbufAppendS(&result->fonts[1], [NSFont userFontOfSize:12].familyName.UTF8String);
28 #ifdef MAC_OS_X_VERSION_10_15
29 ffStrbufAppendS(&result->fonts[2], [NSFont monospacedSystemFontOfSize:12 weight:400].familyName.UTF8String);
30 #else
31 ffStrbufAppendS(&result->fonts[2], "");
32 #endif
33 ffStrbufAppendS(&result->fonts[3], [NSFont userFixedPitchFontOfSize:12].familyName.UTF8String);
34 generateString(result);
35
36 return nullptr;
37}