Text rendering routines
-
class
sdl2.ext.
BitmapFont
(surface : Sprite, size : iterable[, mapping=None) A bitmap graphics to character mapping. The
BitmapFont
class uses an image surface to find and render font character glyphs for text. It requires a mapping table, which denotes the characters available on the image.The mapping table is a list of strings, where each string reflects a line of characters on the image. Each character within each line has the same size as specified by the size argument.
A typical mapping table might look like
[ '0123456789', 'ABCDEFGHIJ', 'KLMNOPQRST', 'UVWXYZ ', 'abcdefghij', 'klmnopqrst', 'uvwxyz ', ',;.:!?+-()' ]
-
surface
The
sdl2.SDL_Surface
containing the character bitmaps.
-
offsets
A dict containing the character offsets on the
surface
.
-
mapping
The character mapping table, a list of strings.
-
size
The size of an individual glyph bitmap on the font.
-
render
(text : string[, bpp=None]) → Sprite Renders the passed text on a new
Sprite
and returns it. If no explicit bpp are provided, the bpp settings of thesurface
are used.
-
render_on
(surface : Sprite, text : string[, offset=(0, 0)]) -> (int, int, int, int) Renders a text on the passed sprite, starting at a specific offset. The top-left start position of the text will be the passed offset and a 4-value tuple with the changed area will be returned.
-
contains
(c : string) → bool Checks, whether a certain character exists in the font.
-
can_render
(text : string) → bool Checks, whether all characters in the passed text can be rendered.
-
-
class
sdl2.ext.
FontManager
(font_path : str[, alias=None[, size=16[, color=Color(255, 255, 255)[, bg_color=Color(0, 0, 0)]]]]) Manage fonts and rendering of text.
One font path must be given to initialise the FontManager.
default_font
will be set to this font. size is the default font size in pixels. color and bg_color will give the FontManager a default color.-
bg_color
The
sdl2.ext.Color
to be used as background color.
-
color
The
sdl2.ext.Color
to be used for rendering text.
-
default_font
Returns the name of the current default font being used by the
FontManager
. On assigningdefault_font
, the value must be a loaded font alias.
-
size
The default font size in pixels.
-
add
(font_path : str[, alias=None[, size=None]]) → sdl2.sdlttf.TTF_Font Add a font to the
FontManager
. alias is by default the font name, any other name can be passed, size is the font size in pixels and defaults tosize
. Returns the font pointer stored infonts
.
-
close
() Closes all fonts used by the
FontManager
.
-
render
(text : str[, alias=None[, size=None[, width=None[, color=None[, bg_color=None[, **kwargs]]]]]]) → sdl2.SDL_Surface Renders text to a surface. This method uses the font designated by the passed alias or, if alias is omitted, by the set
default_font
. A size can be passed even if the font was not loaded with this size. A width can be given for automatic line wrapping. If no bg_color or color are given, it will default to the FontManager’sbg_color
andcolor
.
-