lv_draw_rbasic.h 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091
  1. /**
  2. * @file lv_draw_rbasic..h
  3. *
  4. */
  5. #ifndef LV_DRAW_RBASIC_H
  6. #define LV_DRAW_RBASIC_H
  7. #ifdef __cplusplus
  8. extern "C" {
  9. #endif
  10. /*********************
  11. * INCLUDES
  12. *********************/
  13. #include "../../lv_conf.h"
  14. #if USE_LV_REAL_DRAW != 0
  15. #include "../lv_misc/lv_color.h"
  16. #include "../lv_misc/lv_area.h"
  17. #include "../lv_misc/lv_font.h"
  18. /*********************
  19. * DEFINES
  20. *********************/
  21. /**********************
  22. * TYPEDEFS
  23. **********************/
  24. /**********************
  25. * GLOBAL PROTOTYPES
  26. **********************/
  27. void lv_rpx(lv_coord_t x, lv_coord_t y, const lv_area_t * mask_p, lv_color_t color, lv_opa_t opa);
  28. /**
  29. * Fill an area on the display
  30. * @param cords_p coordinates of the area to fill
  31. * @param mask_p fill only o this mask
  32. * @param color fill color
  33. * @param opa opacity (ignored, only for compatibility with lv_vfill)
  34. */
  35. void lv_rfill(const lv_area_t * cords_p, const lv_area_t * mask_p,
  36. lv_color_t color, lv_opa_t opa);
  37. /**
  38. * Draw a letter to the display
  39. * @param pos_p left-top coordinate of the latter
  40. * @param mask_p the letter will be drawn only on this area
  41. * @param font_p pointer to font
  42. * @param letter a letter to draw
  43. * @param color color of letter
  44. * @param opa opacity of letter (ignored, only for compatibility with lv_vletter)
  45. */
  46. void lv_rletter(const lv_point_t * pos_p, const lv_area_t * mask_p,
  47. const lv_font_t * font_p, uint32_t letter,
  48. lv_color_t color, lv_opa_t opa);
  49. /**
  50. * When the letter is ant-aliased it needs to know the background color
  51. * @param bg_color the background color of the currently drawn letter
  52. */
  53. void lv_rletter_set_background(lv_color_t color);
  54. /**
  55. * Draw a color map to the display (image)
  56. * @param cords_p coordinates the color map
  57. * @param mask_p the map will drawn only on this area
  58. * @param map_p pointer to a lv_color_t array
  59. * @param opa opacity of the map (ignored, only for compatibility with 'lv_vmap')
  60. * @param chroma_keyed true: enable transparency of LV_IMG_LV_COLOR_TRANSP color pixels
  61. * @param alpha_byte true: extra alpha byte is inserted for every pixel (not supported, only l'v_vmap' can draw it)
  62. * @param recolor mix the pixels with this color
  63. * @param recolor_opa the intense of recoloring
  64. */
  65. void lv_rmap(const lv_area_t * cords_p, const lv_area_t * mask_p,
  66. const uint8_t * map_p, lv_opa_t opa, bool chroma_key, bool alpha_byte,
  67. lv_color_t recolor, lv_opa_t recolor_opa);
  68. /**********************
  69. * MACROS
  70. **********************/
  71. #endif /*USE_LV_REAL_DRAW*/
  72. #ifdef __cplusplus
  73. } /* extern "C" */
  74. #endif
  75. #endif /*LV_DRAW_RBASIC_H*/