# undo Icon

> The undo icon from Lucide as Compose ImageVector Kotlin code, Android Vector Drawable XML and SVG.

- Library: [Lucide](https://composables.com/icons/icon-libraries/lucide.md)
- License: ISC (full text in the [Lucide library page](https://composables.com/icons/icon-libraries/lucide.md))
- Categories: [Text](https://composables.com/icons/categories/text.md), [Arrows](https://composables.com/icons/categories/arrows.md)

## Compose ImageVector (Kotlin)

For Jetpack Compose and Compose Multiplatform. Download: `https://composables.com/download/icons/lucide/undo.kt`

```kotlin
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.SolidColor
import androidx.compose.ui.graphics.StrokeCap
import androidx.compose.ui.graphics.StrokeJoin
import androidx.compose.ui.graphics.vector.ImageVector
import androidx.compose.ui.graphics.vector.path
import androidx.compose.ui.unit.dp

val LucideUndo: ImageVector
    get() {
        if (_LucideUndo != null) return _LucideUndo!!
        
        _LucideUndo = ImageVector.Builder(
            name = "undo",
            defaultWidth = 24.dp,
            defaultHeight = 24.dp,
            viewportWidth = 24f,
            viewportHeight = 24f
        ).apply {
            path(
                fill = SolidColor(Color.Transparent),
                stroke = SolidColor(Color.Black),
                strokeLineWidth = 2f,
                strokeLineCap = StrokeCap.Round,
                strokeLineJoin = StrokeJoin.Round
            ) {
                moveTo(3f, 7f)
                verticalLineToRelative(6f)
                horizontalLineToRelative(6f)
            }
            path(
                fill = SolidColor(Color.Transparent),
                stroke = SolidColor(Color.Black),
                strokeLineWidth = 2f,
                strokeLineCap = StrokeCap.Round,
                strokeLineJoin = StrokeJoin.Round
            ) {
                moveTo(21f, 17f)
                arcToRelative(9f, 9f, 0f, false, false, -9f, -9f)
                arcToRelative(9f, 9f, 0f, false, false, -6f, 2.3f)
                lineTo(3f, 13f)
            }
        }.build()
        
        return _LucideUndo!!
    }

private var _LucideUndo: ImageVector? = null
```

## Android Vector Drawable (XML)

Download: `https://composables.com/download/icons/lucide/undo.xml`

```xml
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportWidth="24"
    android:viewportHeight="24">
    <path
        android:strokeColor="@android:color/black"
        android:strokeLineCap="round"
        android:strokeLineJoin="round"
        android:strokeWidth="2"
        android:pathData="M3,7v6h6" />
    <path
        android:strokeColor="@android:color/black"
        android:strokeLineCap="round"
        android:strokeLineJoin="round"
        android:strokeWidth="2"
        android:pathData="M21,17a9,9 0 0,0 -9,-9a9,9 0 0,0 -6,2.3L3,13" />
</vector>
```

## SVG

Download: `https://composables.com/download/icons/lucide/undo.svg`

```svg
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" ><path d="M3 7v6h6" /><path d="M21 17a9 9 0 0 0-9-9 9 9 0 0 0-6 2.3L3 13" /></svg>
```
