TextFont
-
class TextFont
Bases:
TypedReferenceCount
,Namable
An encapsulation of a font; i.e. a set of glyphs that may be assembled together by a
TextNode
to represent a string of text.This is just an abstract interface; see
StaticTextFont
orDynamicTextFont
for an actual implementation.Inheritance diagram
-
enum RenderMode
-
enumerator RM_texture = 0
Each glyph is a single textured rectangle
-
enumerator RM_wireframe = 1
Each glyph is a lot of line segments
-
enumerator RM_polygon = 2
Each glyph is a lot of triangles
-
enumerator RM_extruded = 3
a 3-D outline, like a cookie cutter
-
enumerator RM_solid = 4
combination of RM_extruded and RM_polygon
-
enumerator RM_distance_field = 5
-
enumerator RM_invalid = 6
Returned by string_render_mode() for an invalid match.
-
enumerator RM_texture = 0
-
static TypeHandle get_class_type(void)
-
ConstPointerTo<TextGlyph> get_glyph(int character)
Gets the glyph associated with the given character code, as well as an optional scaling parameter that should be applied to the glyph’s geometry and advance parameters. Returns the glyph on success. On failure, it may still return a printable glyph, or it may return NULL.
-
virtual PN_stdfloat get_kerning(int first, int second) const
Returns the amount by which to offset the second glyph when it directly follows the first glyph. This is an additional offset that is added on top of the advance.
-
PN_stdfloat get_line_height(void) const
Returns the number of units high each line of text is.
-
PN_stdfloat get_space_advance(void) const
Returns the number of units wide a space is.
-
bool is_valid(void) const
Returns true if the font is valid and ready to use, false otherwise.
-
void set_line_height(PN_stdfloat line_height)
Changes the number of units high each line of text is.
-
void set_space_advance(PN_stdfloat space_advance)
Changes the number of units wide a space is.
-
virtual void write(std::ostream &out, int indent_level) const
-
enum RenderMode