The Battle for Wesnoth  1.19.0-dev
Namespaces | Functions
sdl_ttf_compat.hpp File Reference

Transitional API for porting SDL_ttf-based code to Pango. More...

#include "font/text.hpp"
Include dependency graph for sdl_ttf_compat.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

 font
 Collection of helper functions relating to Pango formatting.
 

Functions

texture font::pango_render_text (const std::string &text, int size, const color_t &color, font::pango_text::FONT_STYLE style=font::pango_text::STYLE_NORMAL, bool use_markup=false, int max_width=-1)
 Returns a SDL texture containing the rendered text. More...
 
std::pair< int, int > font::pango_line_size (const std::string &line, int font_size, font::pango_text::FONT_STYLE font_style=font::pango_text::STYLE_NORMAL)
 Determine the width and height of a line of text given a certain font size. More...
 
int font::pango_line_width (const std::string &line, int font_size, font::pango_text::FONT_STYLE font_style=font::pango_text::STYLE_NORMAL)
 Determine the width of a line of text given a certain font size. More...
 
std::string font::pango_line_ellipsize (const std::string &text, int font_size, int max_width, font::pango_text::FONT_STYLE font_style=font::pango_text::STYLE_NORMAL)
 If the text exceeds the specified max width, end it with an ellipsis (...) More...
 
std::string font::pango_word_wrap (const std::string &unwrapped_text, int font_size, int max_width, int max_height=-1, int max_lines=-1, bool partial_line=false)
 Uses Pango to word wrap text. More...
 
rect font::pango_draw_text (bool actually_draw, const rect &area, int size, const color_t &color, const std::string &text, int x, int y, bool use_tooltips=false, pango_text::FONT_STYLE style=pango_text::STYLE_NORMAL)
 Draws text on the screen. More...
 

Detailed Description

Transitional API for porting SDL_ttf-based code to Pango.

Do NOT use in new code!

Note
GUI1 markup is not supported by this transitional API for cost-benefit reasons. Not only does implementing it require a lot more work to go over text line by line, it also had major design flaws – namely, only applying to whole lines with variable spans that would be decided by the layout algorithm depending on available space, rather than on a physical line basis (markup start till EOL) or fixed span basis (e.g. the special markup used by the Help browser, or Pango markup).

Definition in file sdl_ttf_compat.hpp.