Learn
Download
Community
Development
Home
»
Learn
»
2.3 Documentation
»
Text.hpp Source File
Français
Donate
Documentation of SFML 2.3
Warning:
this page refers to an old version of SFML. Click here to switch to the latest version.
Main Page
Related Pages
Modules
Classes
Files
File List
SFML
include
SFML
Graphics
Text.hpp
1
//
3
// SFML - Simple and Fast Multimedia Library
4
// Copyright (C) 2007-2015 Laurent Gomila (laurent@sfml-dev.org)
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
StrikeThrough = 1 << 3
63
};
64
71
Text
();
72
88
Text
(
const
String
&
string
,
const
Font
& font,
unsigned
int
characterSize = 30);
89
109
void
setString(
const
String
&
string
);
110
126
void
setFont(
const
Font
& font);
127
145
void
setCharacterSize(
unsigned
int
size);
146
159
void
setStyle(Uint32 style);
160
171
void
setColor(
const
Color
& color);
172
190
const
String
& getString()
const
;
191
204
const
Font
* getFont()
const
;
205
214
unsigned
int
getCharacterSize()
const
;
215
224
Uint32 getStyle()
const
;
225
234
const
Color
& getColor()
const
;
235
251
Vector2f
findCharacterPos(std::size_t index)
const
;
252
265
FloatRect
getLocalBounds()
const
;
266
279
FloatRect
getGlobalBounds()
const
;
280
281
private
:
282
290
virtual
void
draw(
RenderTarget
& target,
RenderStates
states)
const
;
291
299
void
ensureGeometryUpdate()
const
;
300
302
// Member data
304
String
m_string;
305
const
Font
* m_font;
306
unsigned
int
m_characterSize;
307
Uint32 m_style;
308
Color
m_color;
309
mutable
VertexArray
m_vertices;
310
mutable
FloatRect
m_bounds;
311
mutable
bool
m_geometryNeedUpdate;
312
};
313
314
}
// namespace sf
315
316
317
#endif // SFML_TEXT_HPP
318
319
sf::Font
Class for loading and manipulating character fonts.
Definition:
Font.hpp:50
sf::String
Utility string class that automatically handles conversions between types and encodings.
Definition:
String.hpp:44
sf::Transformable
Decomposed transform defined by a position, a rotation and a scale.
Definition:
Transformable.hpp:41
sf::Color
Utility class for manipulating RGBA colors.
Definition:
Color.hpp:40
sf
Definition:
AlResource.hpp:34
sf::Text
Graphical text that can be drawn to a render target.
Definition:
Text.hpp:48
sf::RenderStates
Define the states used for drawing to a RenderTarget.
Definition:
RenderStates.hpp:45
sf::Drawable
Abstract base class for objects that can be drawn to a render target.
Definition:
Drawable.hpp:44
sf::Text::Style
Style
Enumeration of the string drawing styles.
Definition:
Text.hpp:56
sf::VertexArray
Define a set of one or more 2D primitives.
Definition:
VertexArray.hpp:45
sf::Rect< float >
sf::RenderTarget
Base class for all render targets (window, texture, ...)
Definition:
RenderTarget.hpp:51
sf::Vector2< float >