draw_text_ext_transformed

This function is a combination of the base draw_text() function with the draw_text_ext() and draw_text_transformed() functions, permitting you to scale and rotate text while maintaining a specific line spacing and maximum width per line. Note that the "width" argument is based on a scale of 1, so if the scale is different, this value should be changed proportionally. For example, if the base width for a line break is 300 and you set the scale to 2, then the text will appear wrong, over-running the given width. Instead you should have set the width to 150 to compensate the scaling.

 

Syntax:

draw_text_ext_transformed(x, y, string, sep, w, xscale, yscale, angle);

ArgumentTypeDescription
xRealThe x coordinate of the drawn string.
yRealThe y coordinate of the drawn string.
stringStringThe string to draw.
sepRealThe distance in pixels between lines of text.
wRealThe maximum width in pixels of the string before a line break.
xscaleRealThe horizontal scale.
yscaleRealThe vertical scale.
angleRealThe angle of the text.

 

Returns:

N/A

 

Example:

draw_set_halign(fa_center);
draw_set_valign(fa_middle);
image_angle += 1;
draw_text_ext_transformed(room_width / 2, room_height / 2, keyboard_string, 10, 300, 2, 2, image_angle);

The above code will draw the given text in the middle of the room, with a maximum string length of 300 pixels, a spacing between each line of 10 pixels, spinning round and scaled to twice its original size.