# keyboard Icon

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

- Library: [Material Icons](https://composables.com/icons/icon-libraries/material-icons.md)
- License: Apache 2.0 (full text in the [Material Icons library page](https://composables.com/icons/icon-libraries/material-icons.md))
- Styles: [Filled](https://composables.com/icons/icon-libraries/material-icons/keyboard.md?v=filled), [Outlined](https://composables.com/icons/icon-libraries/material-icons/keyboard.md?v=outlined), [Rounded](https://composables.com/icons/icon-libraries/material-icons/keyboard.md?v=rounded), [Sharp](https://composables.com/icons/icon-libraries/material-icons/keyboard.md?v=sharp), [Two-Tone](https://composables.com/icons/icon-libraries/material-icons/keyboard.md?v=twotone)
- Categories: [Hardware](https://composables.com/icons/categories/hardware.md)

## Compose ImageVector (Kotlin)

For Jetpack Compose and Compose Multiplatform. Download: `https://composables.com/download/icons/material-icons/keyboard.kt`

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

val MaterialIconsKeyboard: ImageVector
    get() {
        if (_MaterialIconsKeyboard != null) return _MaterialIconsKeyboard!!
        
        _MaterialIconsKeyboard = ImageVector.Builder(
            name = "keyboard",
            defaultWidth = 24.dp,
            defaultHeight = 24.dp,
            viewportWidth = 24f,
            viewportHeight = 24f
        ).apply {
            path(
                fill = SolidColor(Color.Transparent)
            ) {
                moveTo(0f, 0f)
                horizontalLineToRelative(24f)
                verticalLineToRelative(24f)
                horizontalLineTo(0f)
                verticalLineTo(0f)
                close()
                moveToRelative(0f, 0f)
                horizontalLineToRelative(24f)
                verticalLineToRelative(24f)
                horizontalLineTo(0f)
                verticalLineTo(0f)
                close()
            }
            path(
                fill = SolidColor(Color.Black)
            ) {
                moveTo(20f, 7f)
                verticalLineToRelative(10f)
                horizontalLineTo(4f)
                verticalLineTo(7f)
                horizontalLineToRelative(16f)
                moveToRelative(0f, -2f)
                horizontalLineTo(4f)
                curveToRelative(-1.1f, 0f, -1.99f, 0.9f, -1.99f, 2f)
                lineTo(2f, 17f)
                curveToRelative(0f, 1.1f, 0.9f, 2f, 2f, 2f)
                horizontalLineToRelative(16f)
                curveToRelative(1.1f, 0f, 2f, -0.9f, 2f, -2f)
                verticalLineTo(7f)
                curveToRelative(0f, -1.1f, -0.9f, -2f, -2f, -2f)
                close()
                moveToRelative(-9f, 3f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineToRelative(-2f)
                close()
                moveToRelative(0f, 3f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineToRelative(-2f)
                close()
                moveTo(8f, 8f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineTo(8f)
                close()
                moveToRelative(0f, 3f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineTo(8f)
                close()
                moveToRelative(-3f, 0f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineTo(5f)
                close()
                moveToRelative(0f, -3f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineTo(5f)
                close()
                moveToRelative(3f, 6f)
                horizontalLineToRelative(8f)
                verticalLineToRelative(2f)
                horizontalLineTo(8f)
                close()
                moveToRelative(6f, -3f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineToRelative(-2f)
                close()
                moveToRelative(0f, -3f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineToRelative(-2f)
                close()
                moveToRelative(3f, 3f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineToRelative(-2f)
                close()
                moveToRelative(0f, -3f)
                horizontalLineToRelative(2f)
                verticalLineToRelative(2f)
                horizontalLineToRelative(-2f)
                close()
            }
        }.build()
        
        return _MaterialIconsKeyboard!!
    }

private var _MaterialIconsKeyboard: ImageVector? = null
```

## Android Vector Drawable (XML)

Download: `https://composables.com/download/icons/material-icons/keyboard.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:pathData="M0,0h24v24H0V0Zm0,0h24v24H0V0Z" />
    <path
        android:fillColor="@android:color/black"
        android:pathData="M20,7v10H4V7h16m0,-2H4c-1.1,0 -1.99,0.9 -1.99,2L2,17c0,1.1 0.9,2 2,2h16c1.1,0 2,-0.9 2,-2V7c0,-1.1 -0.9,-2 -2,-2Zm-9,3h2v2h-2Zm0,3h2v2h-2ZM8,8h2v2H8Zm0,3h2v2H8Zm-3,0h2v2H5Zm0,-3h2v2H5Zm3,6h8v2H8Zm6,-3h2v2h-2Zm0,-3h2v2h-2Zm3,3h2v2h-2Zm0,-3h2v2h-2Z" />
</vector>
```

## SVG

Download: `https://composables.com/download/icons/material-icons/keyboard.svg`

```svg
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M0 0h24v24H0V0zm0 0h24v24H0V0z" fill="none"/><path d="M20 7v10H4V7h16m0-2H4c-1.1 0-1.99.9-1.99 2L2 17c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V7c0-1.1-.9-2-2-2zm-9 3h2v2h-2zm0 3h2v2h-2zM8 8h2v2H8zm0 3h2v2H8zm-3 0h2v2H5zm0-3h2v2H5zm3 6h8v2H8zm6-3h2v2h-2zm0-3h2v2h-2zm3 3h2v2h-2zm0-3h2v2h-2z"/></svg>
```
