Kiwano Engine  v1.2.x
TextStyle.h
1 // Copyright (c) 2016-2018 Kiwano - Nomango
2 //
3 // Permission is hereby granted, free of charge, to any person obtaining a copy
4 // of this software and associated documentation files (the "Software"), to deal
5 // in the Software without restriction, including without limitation the rights
6 // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7 // copies of the Software, and to permit persons to whom the Software is
8 // furnished to do so, subject to the following conditions:
9 //
10 // The above copyright notice and this permission notice shall be included in
11 // all copies or substantial portions of the Software.
12 //
13 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14 // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15 // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16 // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17 // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18 // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19 // THE SOFTWARE.
20 
21 #pragma once
22 #include <kiwano/render/Brush.h>
23 #include <kiwano/render/Color.h>
24 #include <kiwano/render/Font.h>
25 #include <kiwano/render/StrokeStyle.h>
26 
27 namespace kiwano
28 {
38 enum class TextAlign
39 {
40  Left,
41  Right,
42  Center,
43  Justified
44 };
45 
50 class KGE_API TextStyle
51 {
52 public:
53  FontPtr font;
55  BrushPtr fill_brush;
56  BrushPtr outline_brush;
57  StrokeStylePtr outline_stroke;
58  float wrap_width;
59  float line_spacing;
62 
63 public:
68  TextStyle();
69 
75  TextStyle(FontPtr font);
76 
84  TextStyle(const String& font_family, float font_size, uint32_t font_weight = FontWeight::Normal);
85 };
86 
89 } // namespace kiwano
BrushPtr outline_brush
描边画刷
Definition: TextStyle.h:56
bool show_underline
显示下划线
Definition: TextStyle.h:60
FontPtr font
字体
Definition: TextStyle.h:53
文本样式
Definition: TextStyle.h:50
TextAlign
文本对齐方式
Definition: TextStyle.h:38
正常
Definition: Font.h:47
Definition: Actor.cpp:26
float wrap_width
自动换行宽度
Definition: TextStyle.h:58
float line_spacing
行间距
Definition: TextStyle.h:59
bool show_strikethrough
显示删除线
Definition: TextStyle.h:61
StrokeStylePtr outline_stroke
描边样式
Definition: TextStyle.h:57
BrushPtr fill_brush
填充画刷
Definition: TextStyle.h:55
TextAlign alignment
对齐方式
Definition: TextStyle.h:54