canvas.h 933 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #pragma once
  2. #include <stddef.h>
  3. #include <gui/canvas.h>
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7. /**
  8. * @brief Print formatted string to canvas
  9. *
  10. * @param canvas canvas instance
  11. * @param x x position
  12. * @param y y position
  13. * @param format format string
  14. * @param ... arguments
  15. */
  16. void canvas_printf(Canvas* canvas, uint8_t x, uint8_t y, const char* format, ...);
  17. /**
  18. * @brief Get width of formatted string
  19. *
  20. * @param canvas canvas instance
  21. * @param format format string
  22. * @param ... arguments
  23. * @return size_t width of formatted string
  24. */
  25. size_t canvas_printf_width(Canvas* canvas, const char* format, ...);
  26. /**
  27. * @brief Draw aligned string with outline
  28. *
  29. * @param canvas
  30. * @param x
  31. * @param y
  32. * @param h
  33. * @param v
  34. * @param cstr
  35. */
  36. void canvas_draw_str_aligned_outline(
  37. Canvas* canvas,
  38. uint8_t x,
  39. uint8_t y,
  40. Align h,
  41. Align v,
  42. const char* cstr);
  43. #ifdef __cplusplus
  44. }
  45. #endif