aa_printf(3)

πŸ’– aa_printf(3) πŸ’–

okay bestie, gather round, because we're talking about aa_printf β€” a little function from the Library Functions Manual (yes that's the manual it lives in, and yes it's iconic) and it's about printing text straight into your AA-lib output buffers. text on pixels, no cap. πŸ‘‘


✨ NAME ✨

aa_printf β€” print text to AA-lib output buffers. that's it, that's the whole job, and she does it flawlessly. πŸ’…


🌸 SYNOPSIS 🌸

#include <aalib.h>

int aa_printf
(
     aa_context *c,
     int x,
     int y,
     enum aa_attribute attr,
     const char *fmt,
     ...
);

look at her. six whole things to hand her and she'll give you back an int. we love a low-maintenance queen. 🫢


πŸŽ€ PARAMETERS πŸŽ€

  • aa_context *c β€” the AA-lib context you wanna operate on. like, which little canvas are we decorating today, bestie? πŸ–ΌοΈ
  • int x β€” the X coordinate of the first character. where the text starts horizontally, fr.
  • int y β€” the Y coordinate of the first character. same vibe but vertical, you know the drill.
  • enum aa_attribute attr β€” the attribute to use. this is the glow up setting, the whole aesthetic. ✨

here's every single possible value for an enum aa_attribute, no gatekeeping:

  • AA_NORMAL β€” normal characters. the default serve, nothing extra.
  • AA_DIM β€” dark characters. moody, lowkey, mysterious. πŸ–€
  • AA_BOLD β€” bright characters. she's loud, she's confident, she's on.
  • AA_BOLDFONT β€” characters rendered in the bold font. (different from bright! the font is bold, not just the brightness, iykyk)
  • AA_REVERSE β€” reversed characters, i.e. black on white. flipping the whole look, main character energy. πŸ”„
  • AA_SPECIAL β€” renders characters in a way that's easily visible on the screen. the exact rendering here is driver dependent, but this mode is meant to be used for text you want to make easily visible in the image. so like, use it when you need people to Actually See It. πŸ‘€
  • const char *fmt β€” the text you wanna output, in standard printf format. all the %d-core you could ever want. πŸ“
  • ... β€” Not Documented. literally nobody wrote it down. it's giving mystery. πŸ’€ (it's the varargs that go with fmt, but the manpage said "Not Documented" and I'm not out here inventing lore.)

πŸ’œ DESCRIPTION πŸ’œ

prints the given text into AA-lib output buffers. that's the whole thing. so simple. so clean. so slay.

⚠️ okay but the important part, bestie: to actually SEE the effect, you need to call aa_flush too. don't come crying to me when nothing shows up on screen because you forgot the flush. that's the number one heartbreak in this fandom. 😭

🌈 SEE ALSO 🌈

the whole extended friend group, alphabetically-ish, all of them, every last one, because we don't leave anyone out of the group chat:

save_d(3), mem_d(3), aa_help(3), aa_formats(3), aa_fonts(3), aa_dithernames(3), aa_drivers(3), aa_kbddrivers(3), aa_mousedrivers(3), aa_kbdrecommended(3), aa_mouserecommended(3), aa_displayrecommended(3), aa_defparams(3), aa_defrenderparams(3), aa_scrwidth(3), aa_scrheight(3), aa_mmwidth(3), aa_mmheight(3), aa_imgwidth(3), aa_imgheight(3), aa_image(3), aa_text(3), aa_attrs(3), aa_currentfont(3), aa_autoinit(3), aa_autoinitkbd(3), aa_autoinitmouse(3), aa_recommendhi(3), aa_recommendlow(3), aa_init(3), aa_initkbd(3), aa_initmouse(3), aa_close(3), aa_uninitkbd(3), aa_uninitmouse(3), aa_fastrender(3), aa_render(3), aa_puts(3), aa_gotoxy(3), aa_hidecursor(3), aa_showcursor(3), aa_getmouse(3), aa_hidemouse(3), aa_showmouse(3), aa_registerfont(3), aa_setsupported(3), aa_setfont(3), aa_getevent(3), aa_getkey(3), aa_resize(3), aa_resizehandler(3), aa_parseoptions(3), aa_edit(3), aa_createedit(3), aa_editkey(3), aa_putpixel(3), aa_recommendhikbd(3), aa_recommendlowkbd(3), aa_recommendhimouse(3), aa_recommendlowmouse(3), aa_recommendhidisplay(3), aa_recommendlowdisplay(3)


and that's the whole page, bestie!! πŸ¦‹βœ¨ this one was generated by c2man from aalib.h, and it's dated 8 September 1999 β€” yeah, a genuine 90s icon, still serving looks in the terminal to this day. periodt. πŸ’…πŸ‘‘πŸŒΈ