FlowArithmeticCalculator 1.0.0
Flow Arithmetic Calculator
Loading...
Searching...
No Matches
FontManager.cpp
Go to the documentation of this file.
1#include "FontManager.h"
2
3namespace gui::renderer {
5 SkPaint paint;
6
7 // black stroke
8 paint.setColor(colors::TEXT_OUTLINE_COLOR);
9 paint.setStyle(SkPaint::kStroke_Style);
10 paint.setStrokeWidth(4);
11 paint.setAntiAlias(true);
12
13 return paint;
14 }();
15
17 SkPaint paint;
18
19 // white fill
20 paint.setColor(colors::TEXT_COLOR);
21 paint.setStyle(SkPaint::kFill_Style);
22 paint.setAntiAlias(true);
23
24 return paint;
25 }();
26
27#if __APPLE__
28 sk_sp<SkFontMgr> FontManager::fontMgr = SkFontMgr_New_CoreText(nullptr);
29#elif WIN32
30 sk_sp<SkFontMgr> FontManager::fontMgr = SkFontMgr_New_DirectWrite();
31#else
32 // linux - use fontconfig
33 sk_sp<SkFontMgr> FontManager::fontMgr =
34 SkFontMgr_New_FontConfig(nullptr, SkFontScanner_Make_FreeType());
35#endif
36
37 sk_sp<SkTypeface> FontManager::typeface =
38 fontMgr->legacyMakeTypeface(nullptr, SkFontStyle::Normal());
39
41 SkFont font;
42 font.setSubpixel(true);
44 font.setTypeface(FontManager::typeface);
45 font.setEmbolden(true);
46
47 return font;
48 }();
49
51 SkFont font;
52 font.setSubpixel(true);
54 font.setTypeface(FontManager::typeface);
55
56 return font;
57 }();
58
59 SkFont FontManager::captionFont = [] {
60 SkFont font;
61 font.setSubpixel(true);
63 font.setTypeface(FontManager::typeface);
64
65 return font;
66 }();
67
68 SkFont FontManager::menuChoiceFont = [] {
69 SkFont font;
70 font.setSubpixel(true);
72 font.setTypeface(FontManager::typeface);
73
74 return font;
75 }();
76
78 float aspectY,
79 float xScale,
80 float yScale) {
81 const float scaling = std::min(xScale, yScale) * std::min(aspectX, aspectY);
82
87 }
88
106} // namespace gui::renderer
Variant
The visual display variant of the text.
Definition UIText.h:19
static void recalculateFontSizes(float aspectX, float aspectY, float xScale, float yScale)
Recalculates the font sizes.
static sk_sp< SkTypeface > typeface
The typeface for the text font.
static SkFont menuHeadlineFont
The font for the menu headline font.
Definition FontManager.h:58
static sk_sp< SkFontMgr > fontMgr
The font manager.
static SkPaint textFontFillPaint
The paint for the text font fill.
Definition FontManager.h:43
static SkFont menuCaptionFont
The font for the menu caption font.
Definition FontManager.h:63
static const SkFont & getFontForVariant(const business_logic::components::UIText::Variant &variant)
Gets the font for the given variant.
static SkPaint textFontStrokePaint
The paint for the text font stroke.
Definition FontManager.h:48
static SkFont captionFont
The font for the caption font.
Definition FontManager.h:68
static SkFont menuChoiceFont
The font for the menu choice font.
Definition FontManager.h:53
constexpr int MENU_CHOICE_FONT_SIZE_BASE
Definition constants.h:11
constexpr int CAPTION_FONT_SIZE_BASE
Definition constants.h:10
constexpr int MENU_CAPTION_FONT_SIZE_BASE
Definition constants.h:9
constexpr int MENU_HEADLINE_FONT_SIZE_BASE
Definition constants.h:8
const SkColor TEXT_COLOR
Definition colors.cpp:27
const SkColor TEXT_OUTLINE_COLOR
Definition colors.cpp:30
The GUI renderer and renderer-supporting implementation module.
Definition colors.cpp:3