# lv_draw_nanovg_private.h (/api/draw/nanovg/lv_draw_nanovg_private_h)



<RelatedHeaders name="lv_draw_nanovg.h" isPrivate="true" />

<ApiSummary functions="19" structs="1" typedefs="1" macros="1" />

Functions [#functions]

<ApiTabs items="[&#x22;Getters (1)&#x22;,&#x22;Other (18)&#x22;]">
  <ApiTab value="Getters (1)">
    <ApiMember kind="function" name="lv_nanovg_fb_get_image_handle" file="draw/nanovg/lv_draw_nanovg_private.h" line="202" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L202">
      lv_nanovg_fb_get_image_handle [#lv_nanovg_fb_get_image_handle]

      Get image handle from framebuffer

      ```c title=" " lineNumbers=1
      int lv_nanovg_fb_get_image_handle(struct NVGLUframebuffer *fb)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name | Type                        | Description                                  |
      | ---- | --------------------------- | -------------------------------------------- |
      | `fb` | `struct NVGLUframebuffer *` | the framebuffer to get the image handle from |

      **Returns:** `int` — the image handle
    </ApiMember>
  </ApiTab>

  <ApiTab value="Other (18)">
    <ApiMember kind="function" name="lv_draw_nanovg_3d" file="draw/nanovg/lv_draw_nanovg_private.h" line="95" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L95">
      lv_draw_nanovg_3d [#lv_draw_nanovg_3d]

      Draw 3D texture on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_3d(lv_draw_task_t *t, const lv_draw_3d_dsc_t *dsc, const lv_area_t *coords)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name     | Type                                                                   | Description                       |
      | -------- | ---------------------------------------------------------------------- | --------------------------------- |
      | `t`      | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />           | pointer to a drawing task         |
      | `dsc`    | <ApiLink name="lv_draw_3d_dsc_t" display="const lv_draw_3d_dsc_t *" /> | pointer to a 3D draw descriptor   |
      | `coords` | <ApiLink name="lv_area_t" display="const lv_area_t *" />               | the coordinates of the 3D texture |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_arc" file="draw/nanovg/lv_draw_nanovg_private.h" line="104" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L104">
      lv_draw_nanovg_arc [#lv_draw_nanovg_arc]

      Draw arc on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_arc(lv_draw_task_t *t, const lv_draw_arc_dsc_t *dsc, const lv_area_t *coords)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name     | Type                                                                     | Description                  |
      | -------- | ------------------------------------------------------------------------ | ---------------------------- |
      | `t`      | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />             | pointer to a drawing task    |
      | `dsc`    | <ApiLink name="lv_draw_arc_dsc_t" display="const lv_draw_arc_dsc_t *" /> | pointer to an arc descriptor |
      | `coords` | <ApiLink name="lv_area_t" display="const lv_area_t *" />                 | the coordinates of the arc   |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_border" file="draw/nanovg/lv_draw_nanovg_private.h" line="112" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L112">
      lv_draw_nanovg_border [#lv_draw_nanovg_border]

      Draw border on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_border(lv_draw_task_t *t, const lv_draw_border_dsc_t *dsc, const lv_area_t *coords)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name     | Type                                                                           | Description                    |
      | -------- | ------------------------------------------------------------------------------ | ------------------------------ |
      | `t`      | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                   | pointer to a drawing task      |
      | `dsc`    | <ApiLink name="lv_draw_border_dsc_t" display="const lv_draw_border_dsc_t *" /> | pointer to a border descriptor |
      | `coords` | <ApiLink name="lv_area_t" display="const lv_area_t *" />                       | the coordinates of the border  |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_box_shadow" file="draw/nanovg/lv_draw_nanovg_private.h" line="120" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L120">
      lv_draw_nanovg_box_shadow [#lv_draw_nanovg_box_shadow]

      Draw box on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_box_shadow(lv_draw_task_t *t, const lv_draw_box_shadow_dsc_t *dsc, const lv_area_t *coords)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name     | Type                                                                                   | Description                 |
      | -------- | -------------------------------------------------------------------------------------- | --------------------------- |
      | `t`      | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                           | pointer to a drawing task   |
      | `dsc`    | <ApiLink name="lv_draw_box_shadow_dsc_t" display="const lv_draw_box_shadow_dsc_t *" /> | pointer to a box descriptor |
      | `coords` | <ApiLink name="lv_area_t" display="const lv_area_t *" />                               | the coordinates of the box  |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_fill" file="draw/nanovg/lv_draw_nanovg_private.h" line="128" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L128">
      lv_draw_nanovg_fill [#lv_draw_nanovg_fill]

      Fill a rectangle on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_fill(lv_draw_task_t *t, const lv_draw_fill_dsc_t *dsc, const lv_area_t *coords)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name     | Type                                                                       | Description                      |
      | -------- | -------------------------------------------------------------------------- | -------------------------------- |
      | `t`      | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />               | pointer to a drawing task        |
      | `dsc`    | <ApiLink name="lv_draw_fill_dsc_t" display="const lv_draw_fill_dsc_t *" /> | pointer to a fill descriptor     |
      | `coords` | <ApiLink name="lv_area_t" display="const lv_area_t *" />                   | the coordinates of the rectangle |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_image" file="draw/nanovg/lv_draw_nanovg_private.h" line="137" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L137">
      lv_draw_nanovg_image [#lv_draw_nanovg_image]

      Draw image on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_image(lv_draw_task_t *t, const lv_draw_image_dsc_t *dsc, const lv_area_t *coords, int image_handle)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name           | Type                                                                         | Description                     |
      | -------------- | ---------------------------------------------------------------------------- | ------------------------------- |
      | `t`            | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                 | pointer to a drawing task       |
      | `dsc`          | <ApiLink name="lv_draw_image_dsc_t" display="const lv_draw_image_dsc_t *" /> | pointer to an image descriptor  |
      | `coords`       | <ApiLink name="lv_area_t" display="const lv_area_t *" />                     | the coordinates of the image    |
      | `image_handle` | `int`                                                                        | the handle of the image to draw |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_label_init" file="draw/nanovg/lv_draw_nanovg_private.h" line="144" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L144">
      lv_draw_nanovg_label_init [#lv_draw_nanovg_label_init]

      Initialize draw label on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_label_init(lv_draw_nanovg_unit_t *u)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name | Type                                                                       | Description              |
      | ---- | -------------------------------------------------------------------------- | ------------------------ |
      | `u`  | <ApiLink name="lv_draw_nanovg_unit_t" display="lv_draw_nanovg_unit_t *" /> | pointer to a NanoVG unit |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_label_deinit" file="draw/nanovg/lv_draw_nanovg_private.h" line="150" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L150">
      lv_draw_nanovg_label_deinit [#lv_draw_nanovg_label_deinit]

      Deinitialize draw label on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_label_deinit(lv_draw_nanovg_unit_t *u)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name | Type                                                                       | Description              |
      | ---- | -------------------------------------------------------------------------- | ------------------------ |
      | `u`  | <ApiLink name="lv_draw_nanovg_unit_t" display="lv_draw_nanovg_unit_t *" /> | pointer to a NanoVG unit |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_letter" file="draw/nanovg/lv_draw_nanovg_private.h" line="158" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L158">
      lv_draw_nanovg_letter [#lv_draw_nanovg_letter]

      Draw letter on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_letter(lv_draw_task_t *t, const lv_draw_letter_dsc_t *dsc, const lv_area_t *coords)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name     | Type                                                                           | Description                    |
      | -------- | ------------------------------------------------------------------------------ | ------------------------------ |
      | `t`      | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                   | pointer to a drawing task      |
      | `dsc`    | <ApiLink name="lv_draw_letter_dsc_t" display="const lv_draw_letter_dsc_t *" /> | pointer to a letter descriptor |
      | `coords` | <ApiLink name="lv_area_t" display="const lv_area_t *" />                       | the coordinates of the letter  |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_label" file="draw/nanovg/lv_draw_nanovg_private.h" line="166" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L166">
      lv_draw_nanovg_label [#lv_draw_nanovg_label]

      Draw label on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_label(lv_draw_task_t *t, const lv_draw_label_dsc_t *dsc, const lv_area_t *coords)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name     | Type                                                                         | Description                   |
      | -------- | ---------------------------------------------------------------------------- | ----------------------------- |
      | `t`      | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                 | pointer to a drawing task     |
      | `dsc`    | <ApiLink name="lv_draw_label_dsc_t" display="const lv_draw_label_dsc_t *" /> | pointer to a label descriptor |
      | `coords` | <ApiLink name="lv_area_t" display="const lv_area_t *" />                     | the coordinates of the label  |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_layer" file="draw/nanovg/lv_draw_nanovg_private.h" line="174" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L174">
      lv_draw_nanovg_layer [#lv_draw_nanovg_layer]

      Draw layer on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_layer(lv_draw_task_t *t, const lv_draw_image_dsc_t *draw_dsc, const lv_area_t *coords)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name       | Type                                                                         | Description                    |
      | ---------- | ---------------------------------------------------------------------------- | ------------------------------ |
      | `t`        | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                 | pointer to a drawing task      |
      | `draw_dsc` | <ApiLink name="lv_draw_image_dsc_t" display="const lv_draw_image_dsc_t *" /> | pointer to an image descriptor |
      | `coords`   | <ApiLink name="lv_area_t" display="const lv_area_t *" />                     | the coordinates of the layer   |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_line" file="draw/nanovg/lv_draw_nanovg_private.h" line="181" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L181">
      lv_draw_nanovg_line [#lv_draw_nanovg_line]

      Draw line on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_line(lv_draw_task_t *t, const lv_draw_line_dsc_t *dsc)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                                                       | Description                  |
      | ----- | -------------------------------------------------------------------------- | ---------------------------- |
      | `t`   | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />               | pointer to a drawing task    |
      | `dsc` | <ApiLink name="lv_draw_line_dsc_t" display="const lv_draw_line_dsc_t *" /> | pointer to a line descriptor |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_triangle" file="draw/nanovg/lv_draw_nanovg_private.h" line="188" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L188">
      lv_draw_nanovg_triangle [#lv_draw_nanovg_triangle]

      Draw triangle on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_triangle(lv_draw_task_t *t, const lv_draw_triangle_dsc_t *dsc)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                                                               | Description                      |
      | ----- | ---------------------------------------------------------------------------------- | -------------------------------- |
      | `t`   | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                       | pointer to a drawing task        |
      | `dsc` | <ApiLink name="lv_draw_triangle_dsc_t" display="const lv_draw_triangle_dsc_t *" /> | pointer to a triangle descriptor |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_mask_rect" file="draw/nanovg/lv_draw_nanovg_private.h" line="195" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L195">
      lv_draw_nanovg_mask_rect [#lv_draw_nanovg_mask_rect]

      Draw mask rectangles on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_mask_rect(lv_draw_task_t *t, const lv_draw_mask_rect_dsc_t *dsc)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                                                                 | Description                  |
      | ----- | ------------------------------------------------------------------------------------ | ---------------------------- |
      | `t`   | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                         | pointer to a drawing task    |
      | `dsc` | <ApiLink name="lv_draw_mask_rect_dsc_t" display="const lv_draw_mask_rect_dsc_t *" /> | pointer to a mask descriptor |
    </ApiMember>

    <ApiMember kind="function" name="lv_draw_nanovg_vector" file="draw/nanovg/lv_draw_nanovg_private.h" line="210" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L210">
      lv_draw_nanovg_vector [#lv_draw_nanovg_vector]

      Draw vector graphics on a NanoVG context

      ```c title=" " lineNumbers=1
      void lv_draw_nanovg_vector(lv_draw_task_t *t, const lv_draw_vector_dsc_t *dsc)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name  | Type                                                                           | Description                    |
      | ----- | ------------------------------------------------------------------------------ | ------------------------------ |
      | `t`   | <ApiLink name="lv_draw_task_t" display="lv_draw_task_t *" />                   | pointer to a drawing task      |
      | `dsc` | <ApiLink name="lv_draw_vector_dsc_t" display="const lv_draw_vector_dsc_t *" /> | pointer to a vector descriptor |
    </ApiMember>

    <ApiMember kind="function" name="lv_nanovg_grad_to_paint" file="draw/nanovg/lv_draw_nanovg_private.h" line="218" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L218">
      lv_nanovg_grad_to_paint [#lv_nanovg_grad_to_paint]

      Convert a gradient to a paint.

      ```c title=" " lineNumbers=1
      bool lv_nanovg_grad_to_paint(NVGcontext *ctx, const lv_vector_gradient_t *grad, NVGpaint *paint)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name    | Type                                                                           | Description                   |
      | ------- | ------------------------------------------------------------------------------ | ----------------------------- |
      | `ctx`   | `NVGcontext *`                                                                 | the nanovg context            |
      | `grad`  | <ApiLink name="lv_vector_gradient_t" display="const lv_vector_gradient_t *" /> | the gradient descriptor       |
      | `paint` | `NVGpaint *`                                                                   | the paint to store the result |
    </ApiMember>

    <ApiMember kind="function" name="lv_nanovg_draw_grad" file="draw/nanovg/lv_draw_nanovg_private.h" line="227" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L227">
      lv_nanovg_draw_grad [#lv_nanovg_draw_grad]

      Draw a gradient.

      ```c title=" " lineNumbers=1
      void lv_nanovg_draw_grad(NVGcontext *ctx, const lv_vector_gradient_t *grad, enum NVGwinding winding, enum NVGcompositeOperation composite_operation)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name                  | Type                                                                           | Description             |
      | --------------------- | ------------------------------------------------------------------------------ | ----------------------- |
      | `ctx`                 | `NVGcontext *`                                                                 | the nanovg context      |
      | `grad`                | <ApiLink name="lv_vector_gradient_t" display="const lv_vector_gradient_t *" /> | the gradient descriptor |
      | `winding`             | `enum NVGwinding`                                                              | the fill rule           |
      | `composite_operation` | `enum NVGcompositeOperation`                                                   | the blend mode          |
    </ApiMember>

    <ApiMember kind="function" name="lv_nanovg_draw_grad_helper" file="draw/nanovg/lv_draw_nanovg_private.h" line="241" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L241">
      lv_nanovg_draw_grad_helper [#lv_nanovg_draw_grad_helper]

      Draw a gradient with helper.

      ```c title=" " lineNumbers=1
      void lv_nanovg_draw_grad_helper(NVGcontext *ctx, const lv_area_t *area, const lv_grad_dsc_t *grad_dsc, enum NVGwinding winding, enum NVGcompositeOperation composite_operation)
      ```

      <span className="sr-only">
        Parameters
      </span>

      | Name                  | Type                                                             | Description                      |
      | --------------------- | ---------------------------------------------------------------- | -------------------------------- |
      | `ctx`                 | `NVGcontext *`                                                   | the nanovg context               |
      | `area`                | <ApiLink name="lv_area_t" display="const lv_area_t *" />         | the area to draw the gradient on |
      | `grad_dsc`            | <ApiLink name="lv_grad_dsc_t" display="const lv_grad_dsc_t *" /> | the gradient descriptor          |
      | `winding`             | `enum NVGwinding`                                                | the fill rule                    |
      | `composite_operation` | `enum NVGcompositeOperation`                                     | the blend mode                   |
    </ApiMember>
  </ApiTab>
</ApiTabs>

Structs [#structs]

<ApiMember kind="struct" name="_lv_draw_nanovg_unit_t">
  \_lv_draw_nanovg_unit_t [#_lv_draw_nanovg_unit_t]

  | Member           | Type                                                       | Description |
  | ---------------- | ---------------------------------------------------------- | ----------- |
  | `base_unit`      | <ApiLink name="lv_draw_unit_t" />                          |             |
  | `current_layer`  | <ApiLink name="lv_layer_t" display="lv_layer_t *" />       |             |
  | `vg`             | `NVGcontext *`                                             |             |
  | `is_started`     | <ApiLink name="bool" />                                    |             |
  | `image_buf`      | <ApiLink name="lv_draw_buf_t" display="lv_draw_buf_t *" /> |             |
  | `image_cache`    | <ApiLink name="lv_cache_t" display="lv_cache_t *" />       |             |
  | `image_pending`  | `struct _lv_pending_t *`                                   |             |
  | `image_drop_ll`  | <ApiLink name="lv_ll_t" />                                 |             |
  | `image_drop_src` | `const void *`                                             |             |
  | `letter_cache`   | <ApiLink name="lv_cache_t" display="lv_cache_t *" />       |             |
  | `letter_pending` | `struct _lv_pending_t *`                                   |             |
  | `fbo_cache`      | <ApiLink name="lv_cache_t" display="lv_cache_t *" />       |             |
</ApiMember>

<TypeUsedBy name="_lv_draw_nanovg_unit_t" count="13">
  * `lv_nanovg_fbo_cache_init` — param `u`
  * `lv_nanovg_fbo_cache_deinit` — param `u`
  * `lv_nanovg_fbo_cache_get` — param `u`
  * `lv_nanovg_fbo_cache_release` — param `u`
  * `lv_nanovg_image_cache_init` — param `u`
  * `lv_nanovg_image_cache_deinit` — param `u`
  * `lv_nanovg_image_cache_get_handle` — param `u`
  * `lv_nanovg_image_cache_drop` — param `u`
  * `lv_nanovg_utils_init` — param `u`
  * `lv_nanovg_utils_deinit` — param `u`
  * `lv_nanovg_end_frame` — param `u`
  * `lv_nanovg_clean_up` — param `u`
  * `lv_nanovg_reshape_global_image` — param `u`
</TypeUsedBy>

Typedefs [#typedefs]

<ApiMember kind="typedef" name="lv_draw_nanovg_unit_t" file="draw/nanovg/lv_draw_nanovg_private.h" line="82" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L82">
  lv_draw_nanovg_unit_t [#lv_draw_nanovg_unit_t]

  ```c title=" " lineNumbers=1
  typedef struct _lv_draw_nanovg_unit_t lv_draw_nanovg_unit_t
  ```
</ApiMember>

<TypeUsedBy name="lv_draw_nanovg_unit_t" count="2">
  * `lv_draw_nanovg_label_init` — param `u`
  * `lv_draw_nanovg_label_deinit` — param `u`
</TypeUsedBy>

Macros [#macros]

<ApiMember kind="macro" name="NANOVG_GLES2_IMPLEMENTATION" file="draw/nanovg/lv_draw_nanovg_private.h" line="52" url="https://github.com/lvgl/lvgl/tree/a7b95c5b0839ce901c09c205610bc2c77cc3345d/src/draw/nanovg/lv_draw_nanovg_private.h#L52">
  NANOVG_GLES2_IMPLEMENTATION [#nanovg_gles2_implementation]

  ```c title=" " lineNumbers=1
  #define NANOVG_GLES2_IMPLEMENTATION
  ```
</ApiMember>

Dependencies [#dependencies]

<FileIncludes includes="[&#x22;lv_conf_internal.h&#x22;, &#x22;lv_draw.h&#x22;, &#x22;lv_draw_private.h&#x22;, &#x22;lv_draw_vector.h&#x22;, &#x22;lv_draw_arc.h&#x22;, &#x22;lv_draw_rect.h&#x22;, &#x22;lv_draw_3d.h&#x22;, &#x22;lv_draw_image.h&#x22;, &#x22;lv_draw_label.h&#x22;, &#x22;lv_draw_line.h&#x22;, &#x22;lv_draw_triangle.h&#x22;, &#x22;lv_area_private.h&#x22;, &#x22;nanovg.h&#x22;]" transitiveIncludes="[&#x22;lv_anim.h&#x22;, &#x22;lv_area.h&#x22;, &#x22;lv_array.h&#x22;, &#x22;lv_assert.h&#x22;, &#x22;lv_bidi.h&#x22;, &#x22;lv_cache.h&#x22;, &#x22;lv_cache_class.h&#x22;, &#x22;lv_cache_entry.h&#x22;, &#x22;lv_cache_instance.h&#x22;, &#x22;lv_cache_lru_ll.h&#x22;, &#x22;lv_cache_lru_rb.h&#x22;, &#x22;lv_cache_private.h&#x22;, &#x22;lv_cache_sc_da.h&#x22;, &#x22;lv_color.h&#x22;, &#x22;lv_color_op.h&#x22;, &#x22;lv_conf_kconfig.h&#x22;, &#x22;lv_draw_buf.h&#x22;, &#x22;lv_event.h&#x22;, &#x22;lv_ext_data.h&#x22;, &#x22;lv_flex.h&#x22;, &#x22;lv_font.h&#x22;, &#x22;lv_fs.h&#x22;, &#x22;lv_grad.h&#x22;, &#x22;lv_grid.h&#x22;, &#x22;lv_image_cache.h&#x22;, &#x22;lv_image_decoder.h&#x22;, &#x22;lv_image_dsc.h&#x22;, &#x22;lv_image_header_cache.h&#x22;, &#x22;lv_layout.h&#x22;, &#x22;lv_ll.h&#x22;, &#x22;lv_log.h&#x22;, &#x22;lv_math.h&#x22;, &#x22;lv_matrix.h&#x22;, &#x22;lv_mem.h&#x22;, &#x22;lv_os.h&#x22;, &#x22;lv_os_private.h&#x22;, &#x22;lv_palette.h&#x22;, &#x22;lv_profiler.h&#x22;, &#x22;lv_profiler_builtin.h&#x22;, &#x22;lv_pthread.h&#x22;, &#x22;lv_sprintf.h&#x22;, &#x22;lv_string.h&#x22;, &#x22;lv_style.h&#x22;, &#x22;lv_style_gen.h&#x22;, &#x22;lv_symbol_def.h&#x22;, &#x22;lv_text.h&#x22;, &#x22;lv_tick.h&#x22;, &#x22;lv_timer.h&#x22;, &#x22;lv_types.h&#x22;]" />
