Learn
Download
Community
Development
Home
»
Learn
»
2.0 Documentation
»
Text.hpp Source File
Français
Donate
Documentation of SFML 2.0
Warning:
this page refers to an old version of SFML. Click here to switch to the latest version.
Main Page
Modules
Classes
Files
File List
sfml
sfml
include
SFML
Graphics
Text.hpp
1
2
//
3
// SFML - Simple and Fast Multimedia Library
4
// Copyright (C) 2007-2013 Laurent Gomila (laurent.gom@gmail.com)
5
//
6
// This software is provided 'as-is', without any express or implied warranty.
7
// In no event will the authors be held liable for any damages arising from the use of this software.
8
//
9
// Permission is granted to anyone to use this software for any purpose,
10
// including commercial applications, and to alter it and redistribute it freely,
11
// subject to the following restrictions:
12
//
13
// 1. The origin of this software must not be misrepresented;
14
// you must not claim that you wrote the original software.
15
// If you use this software in a product, an acknowledgment
16
// in the product documentation would be appreciated but is not required.
17
//
18
// 2. Altered source versions must be plainly marked as such,
19
// and must not be misrepresented as being the original software.
20
//
21
// 3. This notice may not be removed or altered from any source distribution.
22
//
24
25
#ifndef SFML_TEXT_HPP
26
#define SFML_TEXT_HPP
27
29
// Headers
31
#include <SFML/Graphics/Export.hpp>
32
#include <SFML/Graphics/Drawable.hpp>
33
#include <SFML/Graphics/Transformable.hpp>
34
#include <SFML/Graphics/Font.hpp>
35
#include <SFML/Graphics/Rect.hpp>
36
#include <SFML/Graphics/VertexArray.hpp>
37
#include <SFML/System/String.hpp>
38
#include <string>
39
#include <vector>
40
41
42
namespace
sf
43
{
48
class
SFML_GRAPHICS_API
Text
:
public
Drawable
,
public
Transformable
49
{
50
public
:
51
56
enum
Style
57
{
58
Regular = 0,
59
Bold = 1 << 0,
60
Italic = 1 << 1,
61
Underlined = 1 << 2
62
};
63
70
Text
();
71
80
Text
(
const
String
&
string
,
const
Font
& font,
unsigned
int
characterSize = 30);
81
101
void
setString(
const
String
&
string
);
102
118
void
setFont(
const
Font
& font);
119
130
void
setCharacterSize(
unsigned
int
size);
131
144
void
setStyle(Uint32 style);
145
156
void
setColor(
const
Color
& color);
157
175
const
String
& getString()
const
;
176
189
const
Font
* getFont()
const
;
190
199
unsigned
int
getCharacterSize()
const
;
200
209
Uint32 getStyle()
const
;
210
219
const
Color
& getColor()
const
;
220
236
Vector2f
findCharacterPos(std::size_t index)
const
;
237
250
FloatRect
getLocalBounds()
const
;
251
264
FloatRect
getGlobalBounds()
const
;
265
266
private
:
267
275
virtual
void
draw(
RenderTarget
& target,
RenderStates
states)
const
;
276
281
void
updateGeometry();
282
284
// Member data
286
String
m_string;
287
const
Font
* m_font;
288
unsigned
int
m_characterSize;
289
Uint32 m_style;
290
Color
m_color;
291
VertexArray
m_vertices;
292
FloatRect
m_bounds;
293
};
294
295
}
// namespace sf
296
297
298
#endif // SFML_TEXT_HPP
299
300