# lv_svg.h (/api/public/image/lv_svg_h)



<RelatedHeaders name="lv_svg_private.h" isPrivate="false" />

<ApiSummary functions="4" macros="2" />

Functions [#functions]

<ApiMember kind="function" name="lv_svg_load_data" file="public/image/lv_svg.h" line="33" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/include/lvgl/image/lv_svg.h#L33">
  lv_svg_load_data [#lv_svg_load_data]

  Loading SVG data and creating the DOM tree.

  ```c title=" " lineNumbers=1
  lv_svg_node_t * lv_svg_load_data(const char *svg_data, uint32_t data_len)
  ```

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

  | Name       | Type           | Description             |
  | ---------- | -------------- | ----------------------- |
  | `svg_data` | `const char *` | pointer to the SVG data |
  | `data_len` | `uint32_t`     | the SVG data length     |
</ApiMember>

<ApiMember kind="function" name="lv_svg_node_create" file="public/image/lv_svg.h" line="41" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/include/lvgl/image/lv_svg.h#L41">
  lv_svg_node_create [#lv_svg_node_create]

  Create an SVG DOM node.

  ```c title=" " lineNumbers=1
  lv_svg_node_t * lv_svg_node_create(lv_svg_node_t *parent)
  ```

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

  | Name     | Type                                                       | Description                                                                                       |
  | -------- | ---------------------------------------------------------- | ------------------------------------------------------------------------------------------------- |
  | `parent` | <ApiLink name="lv_svg_node_t" display="lv_svg_node_t *" /> | pointer to the parent node **May** be `NULL`.. When null, this function creates the document root |

  **Returns:** <ApiLink name="lv_svg_node_t" display="lv_svg_node_t *" /> — true: an new SVG DOM node, false: NULL
</ApiMember>

<ApiMember kind="function" name="lv_draw_svg" file="public/image/lv_svg.h" line="48" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/include/lvgl/image/lv_svg.h#L48">
  lv_draw_svg [#lv_draw_svg]

  Draw an SVG document to a layer.

  ```c title=" " lineNumbers=1
  void lv_draw_svg(lv_layer_t *layer, const lv_svg_node_t *svg_doc)
  ```

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

  | Name      | Type                                                             | Description                         |
  | --------- | ---------------------------------------------------------------- | ----------------------------------- |
  | `layer`   | <ApiLink name="lv_layer_t" display="lv_layer_t *" />             | pointer to the target layer         |
  | `svg_doc` | <ApiLink name="lv_svg_node_t" display="const lv_svg_node_t *" /> | pointer to the SVG document to draw |
</ApiMember>

<ApiMember kind="function" name="lv_svg_node_delete" file="public/image/lv_svg.h" line="55" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/include/lvgl/image/lv_svg.h#L55">
  lv_svg_node_delete [#lv_svg_node_delete]

  Delete an SVG DOM subtree.

  ```c title=" " lineNumbers=1
  void lv_svg_node_delete(lv_svg_node_t *node)
  ```

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

  | Name   | Type                                                       | Description                                      |
  | ------ | ---------------------------------------------------------- | ------------------------------------------------ |
  | `node` | <ApiLink name="lv_svg_node_t" display="lv_svg_node_t *" /> | pointer to an SVG DOM subtree **May** be `NULL`. |
</ApiMember>

Macros [#macros]

<ApiMember kind="macro" name="LV_SVG_NODE_CHILD" file="public/image/lv_svg.h" line="60" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/include/lvgl/image/lv_svg.h#L60">
  LV_SVG_NODE_CHILD [#lv_svg_node_child]

  ```c title=" " lineNumbers=1
  #define LV_SVG_NODE_CHILD(n, i) \
      ((lv_svg_node_t *)(LV_TREE_NODE((n))->children[i]))
  ```
</ApiMember>

<ApiMember kind="macro" name="LV_SVG_NODE" file="public/image/lv_svg.h" line="63" url="https://github.com/lvgl/lvgl/tree/e1a0ad863f29742359bc680d6a7d973448ec2285/include/lvgl/image/lv_svg.h#L63">
  LV_SVG_NODE [#lv_svg_node]

  ```c title=" " lineNumbers=1
  #define LV_SVG_NODE(n) \
      ((lv_svg_node_t*)(n))
  ```
</ApiMember>

Dependencies [#dependencies]

<FileIncludes includes="[&#x22;lv_conf_internal.h&#x22;, &#x22;lv_types.h&#x22;]" includedBy="[&#x22;lvgl.h&#x22;]" />
