MyGUI  3.4.1
MyGUI_FontData.h
Go to the documentation of this file.
1 /*
2  * This source file is part of MyGUI. For the latest info, see http://mygui.info/
3  * Distributed under the MIT License
4  * (See accompanying file COPYING.MIT or copy at http://opensource.org/licenses/MIT)
5  */
6 
7 #ifndef MYGUI_FONT_DATA_H_
8 #define MYGUI_FONT_DATA_H_
9 
10 #include "MyGUI_Prerequest.h"
11 #include "MyGUI_Types.h"
12 
13 namespace MyGUI
14 {
15 
16  namespace FontCodeType
17  {
18 
20  {
21  Tab = 0x0009,
22  LF = 0x000A,
23  CR = 0x000D,
24  Space = 0x0020,
25  NEL = 0x0085,
26 
27  // The following are special code points. These are used represent displayable text elements that do not correspond to
28  // any actual Unicode code point. To prevent collisions, they must be defined with values higher than that of the
29  // highest valid Unicode code point (0x10FFFF as of Unicode 6.1).
30  Selected = 0xFFFFFFFC, // Used for rendering text selections when they have input focus.
31  SelectedBack = 0xFFFFFFFD, // Used for rendering text selections when they don't have input focus.
32  Cursor = 0xFFFFFFFE, // Used for rendering the blinking text cursor.
33  NotDefined = 0xFFFFFFFF // Used to render substitute glyphs for characters that aren't supported by the current font.
34  };
35 
36  }
37 
38  // информация об одном символе
39  struct GlyphInfo
40  {
42  Char _codePoint = 0U,
43  float _width = 0.0f,
44  float _height = 0.0f,
45  float _advance = 0.0f,
46  float _bearingX = 0.0f,
47  float _bearingY = 0.0f,
48  const FloatRect& _uvRect = FloatRect()) :
49  codePoint(_codePoint),
50  width(_width),
51  height(_height),
52  advance(_advance),
53  bearingX(_bearingX),
54  bearingY(_bearingY),
55  uvRect(_uvRect)
56  {
57  }
58 
60  float width;
61  float height;
62  float advance;
63  float bearingX;
64  float bearingY;
66  };
67 
68  using VectorGlyphInfo = std::vector<GlyphInfo>;
69 
70 } // namespace MyGUI
71 
72 #endif // MYGUI_FONT_DATA_H_
widget description should be here.
std::vector< GlyphInfo > VectorGlyphInfo
types::TRect< float > FloatRect
Definition: MyGUI_Types.h:33
unsigned int Char
Definition: MyGUI_Types.h:49
GlyphInfo(Char _codePoint=0U, float _width=0.0f, float _height=0.0f, float _advance=0.0f, float _bearingX=0.0f, float _bearingY=0.0f, const FloatRect &_uvRect=FloatRect())