textprintf_justify_ex(3alleg4)

✨ NAME ✨

textprintf_justify_ex β€” formatted justified output of a string. Yeah bestie, this one is straight out of the Allegro game programming library πŸ’–


🌸 SYNOPSIS 🌸

#include <allegro.h>

void textprintf_justify_ex(BITMAP *bmp, const FONT *f, int x1, x2, y, diff, color, bg, const char *fmt, ...);

πŸ¦‹ DESCRIPTION πŸ¦‹

okay so picture textout_justify_ex()… but make it printf ✨ It's the exact same justified-text situation, except you're feeding it a printf() style format string instead of a plain ol' string. The way it takes your fmt and your ... and just goes? obsessed.

⚠️ real talk though: this function shares the text length limitation of textprintf_ex(), so keep that in mind before you try to dump a whole essay in there 😭

Here's the example, and yes it ate πŸ’…

char *lines[] = {"Line %02d: Draws justified text",
                 "Line %02d: within the specified",
                 "Line %02d: x2-x1 area. But not",
                 "Line %02d: T H I S !", NULL};
/* Show the justification marker. */
vline(screen, 300, 0, SCREEN_H-1, makecol(0, 0, 0));
/* Draw all the lines until we reach a NULL entry. */
for (num = 0, y = 0; lines[num]; num++, y += text_height(font))
   textprintf_justify_ex(screen, font, 0, 300, y, 180,
                         makecol(0, 0, 0), makecol(255, 255, 255),
                         lines[num], num);

πŸ‘‘ SEE ALSO πŸ‘‘


k bye, that's the whole page 🫢 this was the Allegro manual, version 4.4.3, and textprintf_justify_ex(3alleg4) is the main character here. go justify some text fr fr 🌈