SDL::Pango (3)
Leading comments
Automatically generated by Pod::Man 4.09 (Pod::Simple 3.35) Standard preamble: ========================================================================
NAME
SDL::Pango - Text rendering engineCATEGORY
PangoSYNOPSIS
use SDL; use SDL::Color; use SDL::Surface; use SDL::Overlay; use SDL::Rect; use SDL::Video; use SDL::PixelFormat; use SDL::Pango; use SDL::Pango::Context; SDL::Pango::init(); my $context = SDL::Pango::Context->new; SDL::Pango::set_default_color($context, 0xA7C344FF, 0); SDL::Pango::set_markup($context, 'Hello <b>W<span foreground="red">o</span><i>r</i><u>l</u>d</b>!', -1); SDL::init(SDL_INIT_VIDEO); my $display = SDL::Video::set_video_mode(640, 480, 32, SDL_SWSURFACE); my $bg = SDL::Video::map_RGB($display->format, 0x12, 0x22, 0x45); SDL::Video::fill_rect($display, SDL::Rect->new(0, 0, 640, 480), $bg); my $surface = SDL::Pango::create_surface_draw($context); SDL::Video::blit_surface($surface, SDL::Rect->new(0, 0, 640, 480), $display, SDL::Rect->new(0, 0, 640, 480)); SDL::Video::update_rect($display, 0, 0, 0, 0); SDL::delay(2000);
CONSTANTS
The constants are exported by default. You can avoid this by doing:
use SDL::Pango ();
and access them directly:
SDL::Pango::SDLPANGO_DIRECTION_NEUTRAL;
or by choosing the export tags below:
Export tag: ':align'
- SDLPANGO_ALIGN_LEFT
- Left alignment
- SDLPANGO_ALIGN_CENTER
- Centered
- SDLPANGO_ALIGN_RIGHT
- Right alignment
Export tag: ':direction'
- SDLPANGO_DIRECTION_LTR
- Left to right
- SDLPANGO_DIRECTION_RTL
- Right to left
- SDLPANGO_DIRECTION_WEAK_LTR
- Left to right (weak)
- SDLPANGO_DIRECTION_WEAK_RTL
- Right to left (weak)
- SDLPANGO_DIRECTION_NEUTRAL
- Neutral
METHODS
init
SDL::Pango::init();
Initialize the Glib and Pango
Returns: always 0.
was_init
my $was_init = SDL::Pango::was_init();
Query the initialization status of the Glib and Pango
Returns: Non-zero when already initialized. Zero when not initialized.
set_default_color
SDL::Pango::set_default_color($context, $foreground, $background); SDL::Pango::set_default_color($context, $r1, $g1, $b1, $a1, $r2, $g2, $b2, $a2);
Sets default foreground and background color when rendering text and markup.
You can call it with either 2 color-parameters (32-bit
set_minimum_size
SDL::Pango::set_minimum_size($context, $width, $height);
Sets the minimum size of the drawing rectangle.
set_text
SDL::Pango::set_text($context, $text, $length); SDL::Pango::set_text($context, $text, $length, $alignment);
Set plain text to context. Text must be utf-8. $length chars will be rendered, pass "-1" to render the whole text.
$alignment can be:
- *
-
SDLPANGO_ALIGN_LEFT(default)
- *
-
SDLPANGO_ALIGN_CENTER
- *
-
SDLPANGO_ALIGN_RIGHT
set_markup
SDL::Pango::set_markup($context, $text, $length);
Set markup text to context. Text must be utf-8. $length chars will be rendered, pass "-1" to render the whole text.
See PangoMarkupFormat <library.gnome.org/devel/pango/unstable/PangoMarkupFormat.html> for a description about the markup format.
get_layout_width
my $w = SDL::Pango::get_layout_width($context);
Returns the width of the resulting surface of the given text/markup for this context.
get_layout_height
my $h = SDL::Pango::get_layout_height($context);
Returns the height of the resulting surface of the given text/markup for this context.
set_base_direction
SDL::Pango::set_base_direction($context, $direction);
Sets the direction of the text to either left-to-right or right-to-left.
See ``
set_dpi
SDL::Pango::set_dpi($context, $dpi_x, $dpi_y);
Sets the
set_language
SDL::Pango::set_language($context, $language);
Sets the language name for this context.
See
Example:
SDL::Pango::set_language($context, "en");
draw
SDL::Pango::draw($context, $display, $x, $y);
Draws the text or markup to an existing surface at position $x/$y.
set_surface_create_args
SDL::Pango::set_surface_create_args($context, $flags, $bits, $r_mask, $g_mask, $b_mask, $a_mask);
Sets the argument that are used when creating a surface via SDL::Pango::create_surface_draw.
Example:
SDL::Pango::set_surface_create_args( $context, SDL_SWSURFACE, 32, 0xFF000000, 0x00FF0000, 0x0000FF00, 0x000000FF );
create_surface_draw
my $surface = SDL::Pango::create_surface_draw($context);
Creates a new surface and draws the text/markup. You can specify the attributes of the surfaces using SDL::Pango::set_surface_create_args.