# androidx.compose.ui.graphics.drawscope

Common/All

## Interfaces

|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/ContentDrawScope` | Receiver scope for drawing content into a layout, where the content can be drawn between other canvas operations. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawContext` | Object that provides the dependencies to support a `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` drawing environment. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` | Creates a scoped drawing environment with the provided `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas`. | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawTransform` | Defines transformations that can be applied to a drawing environment | Cmn |

## Classes

|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/CanvasDrawScope` | Implementation of `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` that issues drawing commands into the specified canvas and bounds via `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/CanvasDrawScope#draw(androidx.compose.ui.unit.Density,androidx.compose.ui.unit.LayoutDirection,androidx.compose.ui.graphics.Canvas,androidx.compose.ui.geometry.Size,kotlin.Function1)` | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawStyle` | Represents how the shapes should be drawn within a `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` | Cmn |
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/Stroke` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawStyle` that provides information for drawing content with a stroke | Cmn |

## Objects

|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/Fill` | Default `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawStyle` indicating shapes should be drawn completely filled in with the provided color or pattern | Cmn |

## Annotations

|---|---|---|
| `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScopeMarker` | DSL marker used to distinguish between drawing operations and canvas transform operations | Cmn |

## Extension functions summary

|---|---|---|
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).clipPath(androidx.compose.ui.graphics.Path,androidx.compose.ui.graphics.ClipOp,kotlin.Function1)(path: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Path, clipOp: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/ClipOp, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)` Reduces the clip region to the intersection of the current clip and the given path. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).clipRect(kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,androidx.compose.ui.graphics.ClipOp,kotlin.Function1)( left: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, top: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, right: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, bottom: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, clipOp: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/ClipOp, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Reduces the clip region to the intersection of the current clip and the given rectangle indicated by the given left, top, right and bottom bounds. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).draw(androidx.compose.ui.unit.Density,androidx.compose.ui.unit.LayoutDirection,androidx.compose.ui.graphics.Canvas,androidx.compose.ui.geometry.Size,androidx.compose.ui.graphics.layer.GraphicsLayer,kotlin.Function1)( density: https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Density, layoutDirection: https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/LayoutDirection, canvas: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas, size: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Size, graphicsLayer: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer?, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Draws into the provided `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas` with the commands specified in the lambda with this `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` as a receiver | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).drawIntoCanvas(kotlin.Function1)(block: (https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)` Provides access to draw directly with the underlying `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas`. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawTransform.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).inset(kotlin.Float)(inset: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` Convenience method modifies the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` bounds to inset both left, top, right and bottom bounds by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).inset(kotlin.Float)`. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawTransform.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).inset(kotlin.Float,kotlin.Float)(horizontal: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, vertical: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html)` Convenience method modifies the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawTransform` bounds to inset both left and right bounds by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).inset(kotlin.Float,kotlin.Float)` as well as the top and bottom by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).inset(kotlin.Float,kotlin.Float)`. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Function1)(inset: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)` Convenience method modifies the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` bounds to inset both left, top, right and bottom bounds by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Function1)`. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Function1)(horizontal: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, vertical: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)` Convenience method modifies the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` bounds to inset both left and right bounds by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Function1)` as well as the top and bottom by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Function1)`. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Function1)( left: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, top: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, right: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, bottom: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Simultaneously translate the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` coordinate space by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Function1)` and `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Function1)` as well as modify the dimensions of the current painting area. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).rotate(kotlin.Float,androidx.compose.ui.geometry.Offset,kotlin.Function1)(degrees: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)` Add a rotation (in degrees clockwise) to the current transform at the given pivot point. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawTransform.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).rotateRad(kotlin.Float,androidx.compose.ui.geometry.Offset)(radians: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset)` Add a rotation (in radians clockwise) to the current transform at the given pivot point. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).rotateRad(kotlin.Float,androidx.compose.ui.geometry.Offset,kotlin.Function1)(radians: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)` Add a rotation (in radians clockwise) to the current transform at the given pivot point. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawTransform.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).scale(kotlin.Float,androidx.compose.ui.geometry.Offset)(scale: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset)` Add an axis-aligned scale to the current transform, scaling uniformly in both directions by the provided scale factor at the pivot coordinate. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).scale(kotlin.Float,androidx.compose.ui.geometry.Offset,kotlin.Function1)(scale: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)` Add an axis-aligned scale to the current transform, scaling both the horizontal direction and the vertical direction at the given pivot coordinate. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).scale(kotlin.Float,kotlin.Float,androidx.compose.ui.geometry.Offset,kotlin.Function1)( scaleX: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, scaleY: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html )` Add an axis-aligned scale to the current transform, scaling by the first argument in the horizontal direction and the second in the vertical direction at the given pivot coordinate. | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).translate(kotlin.Float,kotlin.Float,kotlin.Function1)(left: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, top: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html, block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)` Translate the coordinate space by the given delta in pixels in both the x and y coordinates respectively | Cmn |
| `inline https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).withTransform(kotlin.Function1,kotlin.Function1)(transformBlock: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawTransform.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html, drawBlock: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html)` Perform 1 or more transformations and execute drawing commands with the specified transformations applied. | Cmn |

## Extension functions

### DrawScope.clipPath

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:clipPath)

```
inline fun DrawScope.clipPath(
    path: Path,
    clipOp: ClipOp = ClipOp.Intersect,
    block: DrawScope.() -> Unit
): Unit
```

Reduces the clip region to the intersection of the current clip and the given path. This method provides a callback to issue drawing commands within the region defined by the clipped path. After this method is invoked, this clip is no longer applied.

| Parameters |
|---|---|
| `path: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Path` | Shape to clip drawing content within |
| `clipOp: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/ClipOp = ClipOp.Intersect` | Clipping operation to conduct on the given bounds, defaults to `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/ClipOp#Intersect()` |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | Lambda callback with this CanvasScope as a receiver scope to issue drawing commands within the provided clip |

### DrawScope.clipRect

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:clipRect)

```
inline fun DrawScope.clipRect(
    left: Float = 0.0f,
    top: Float = 0.0f,
    right: Float = size.width,
    bottom: Float = size.height,
    clipOp: ClipOp = ClipOp.Intersect,
    block: DrawScope.() -> Unit
): Unit
```

Reduces the clip region to the intersection of the current clip and the given rectangle indicated by the given left, top, right and bottom bounds. This provides a callback to issue drawing commands within the clipped region. After this method is invoked, this clip is no longer applied.

Use `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/ClipOp#Difference()` to subtract the provided rectangle from the current clip.

| Parameters |
|---|---|
| `left: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = 0.0f` | Left bound of the rectangle to clip |
| `top: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = 0.0f` | Top bound of the rectangle to clip |
| `right: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = size.width` | Right bound of the rectangle to clip |
| `bottom: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = size.height` | Bottom bound of the rectangle to clip |
| `clipOp: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/ClipOp = ClipOp.Intersect` | Clipping operation to conduct on the given bounds, defaults to `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/ClipOp#Intersect()` |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | Lambda callback with this CanvasScope as a receiver scope to issue drawing commands within the provided clip |

### DrawScope.draw

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:draw)

```
inline fun DrawScope.draw(
    density: Density,
    layoutDirection: LayoutDirection,
    canvas: Canvas,
    size: Size,
    graphicsLayer: GraphicsLayer? = null,
    block: DrawScope.() -> Unit
): Unit
```

Draws into the provided `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas` with the commands specified in the lambda with this `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` as a receiver

```kotlin
import androidx.compose.foundation.Canvas
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.size
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.drawWithCache
import androidx.compose.ui.graphics.drawscope.draw
import androidx.compose.ui.graphics.drawscope.drawIntoCanvas
import androidx.compose.ui.graphics.nativeCanvas
import androidx.compose.ui.unit.dp

Box(
    modifier =
        Modifier.size(120.dp).drawWithCache {
            // Example that shows how to redirect rendering to an Android Picture and then
            // draw the picture into the original destination
            // Note:
            // Canvas#drawPicture is supported with hardware acceleration on Android API 23+
            // Check
            // https://developer.android.com/topic/performance/hardware-accel#drawing-support
            // for details of which drawing operations are supported with hardware acceleration
            val picture = android.graphics.Picture()
            val width = this.size.width.toInt()
            val height = this.size.height.toInt()
            onDrawWithContent {
                val pictureCanvas =
                    androidx.compose.ui.graphics.Canvas(picture.beginRecording(width, height))
                draw(this, this.layoutDirection, pictureCanvas, this.size) {
                    this@onDrawWithContent.drawContent()
                }
                picture.endRecording()

                drawIntoCanvas { canvas -> canvas.nativeCanvas.drawPicture(picture) }
            }
        }
)
```

| Parameters |
|---|---|
| `density: https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Density` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/Density` used to assist in conversions of density independent pixels to raw pixels to draw |
| `layoutDirection: https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/LayoutDirection` | `https://developer.android.com/reference/kotlin/androidx/compose/ui/unit/LayoutDirection` of the layout being drawn in. |
| `canvas: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas` | target canvas to render into |
| `size: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Size` | bounds relative to the current canvas translation in which the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` should draw within |
| `graphicsLayer: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer? = null` | Current `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer` we are drawing into. Might be null if the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).draw(androidx.compose.ui.unit.Density,androidx.compose.ui.unit.LayoutDirection,androidx.compose.ui.graphics.Canvas,androidx.compose.ui.geometry.Size,androidx.compose.ui.graphics.layer.GraphicsLayer,kotlin.Function1)` is not provided by a `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/layer/GraphicsLayer`, for example in the case of a software-accelerated drawing |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | lambda that is called to issue drawing commands on this `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` |

### DrawScope.drawIntoCanvas

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:drawIntoCanvas) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
inline fun DrawScope.drawIntoCanvas(block: (Canvas) -> Unit): Unit
```

Provides access to draw directly with the underlying `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas`. This is helpful for situations to re-use alternative drawing logic in combination with `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope`

| Parameters |
|---|---|
| `block: (https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas) -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | Lambda callback to issue drawing commands on the provided `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/Canvas` |

### DrawTransform.inset

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawTransform.kt+function:inset) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
inline fun DrawTransform.inset(inset: Float): Unit
```

Convenience method modifies the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` bounds to inset both left, top, right and bottom bounds by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).inset(kotlin.Float)`. After this method is invoked, the coordinate space is returned to the state before this inset was applied.

| Parameters |
|---|---|
| `inset: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | number of pixels to inset left, top, right, and bottom bounds. |

### DrawTransform.inset

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawTransform.kt+function:inset) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
inline fun DrawTransform.inset(horizontal: Float = 0.0f, vertical: Float = 0.0f): Unit
```

Convenience method modifies the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawTransform` bounds to inset both left and right bounds by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).inset(kotlin.Float,kotlin.Float)` as well as the top and bottom by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawTransform).inset(kotlin.Float,kotlin.Float)`. After this method is invoked, the coordinate space is returned to the state before the inset was applied

| Parameters |
|---|---|
| `horizontal: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = 0.0f` | number of pixels to inset both left and right bounds. Zero by default. |
| `vertical: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = 0.0f` | number of pixels to inset both top and bottom bounds. Zero by default. |

### DrawScope.inset

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:inset) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
inline fun DrawScope.inset(inset: Float, block: DrawScope.() -> Unit): Unit
```

Convenience method modifies the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` bounds to inset both left, top, right and bottom bounds by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Function1)`. After this method is invoked, the coordinate space is returned to the state before this inset was applied.

| Parameters |
|---|---|
| `inset: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | number of pixels to inset left, top, right, and bottom bounds. |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | lambda that is called to issue additional drawing commands within the modified coordinate space |

### DrawScope.inset

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:inset) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
inline fun DrawScope.inset(
    horizontal: Float = 0.0f,
    vertical: Float = 0.0f,
    block: DrawScope.() -> Unit
): Unit
```

Convenience method modifies the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` bounds to inset both left and right bounds by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Function1)` as well as the top and bottom by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Function1)`. After this method is invoked, the coordinate space is returned to the state before this inset was applied.

| Parameters |
|---|---|
| `horizontal: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = 0.0f` | number of pixels to inset both left and right bounds. Zero by default |
| `vertical: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = 0.0f` | Optional number of pixels to inset both top and bottom bounds. Zero by default |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | lambda that is called to issue additional drawing commands within the modified coordinate space |

### DrawScope.inset

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:inset) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
inline fun DrawScope.inset(
    left: Float,
    top: Float,
    right: Float,
    bottom: Float,
    block: DrawScope.() -> Unit
): Unit
```

Simultaneously translate the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` coordinate space by `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Function1)` and `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/package-summary#(androidx.compose.ui.graphics.drawscope.DrawScope).inset(kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Float,kotlin.Function1)` as well as modify the dimensions of the current painting area. This provides a callback to issue more drawing instructions within the modified coordinate space. This method modifies the width of the `https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope` to be equivalent to width - (left + right) as well as height to height - (top + bottom). After this method is invoked, the coordinate space is returned to the state before the inset was applied.

| Parameters |
|---|---|
| `left: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | number of pixels to inset the left drawing bound |
| `top: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | number of pixels to inset the top drawing bound |
| `right: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | number of pixels to inset the right drawing bound |
| `bottom: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | number of pixels to inset the bottom drawing bound |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | lambda that is called to issue drawing commands within the inset coordinate space |

### DrawScope.rotate

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:rotate)

```
inline fun DrawScope.rotate(degrees: Float, pivot: Offset = center, block: DrawScope.() -> Unit): Unit
```

Add a rotation (in degrees clockwise) to the current transform at the given pivot point. The pivot coordinate remains unchanged by the rotation transformation. After the provided lambda is invoked, the rotation transformation is undone.

| Parameters |
|---|---|
| `degrees: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | to rotate clockwise |
| `pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset = center` | The coordinate for the pivot point, defaults to the center of the coordinate space |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | lambda that is called to issue drawing commands within the rotated coordinate space |

### DrawTransform.rotateRad

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawTransform.kt+function:rotateRad) Added in [1.10.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.10.0)

```
inline fun DrawTransform.rotateRad(radians: Float, pivot: Offset = center): Unit
```

Add a rotation (in radians clockwise) to the current transform at the given pivot point. The pivot coordinate remains unchanged by the rotation transformation

| Parameters |
|---|---|
| `radians: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | to rotate clockwise |
| `pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset = center` | The coordinate for the pivot point, defaults to the center of the coordinate space |

### DrawScope.rotateRad

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:rotateRad)

```
inline fun DrawScope.rotateRad(radians: Float, pivot: Offset = center, block: DrawScope.() -> Unit): Unit
```

Add a rotation (in radians clockwise) to the current transform at the given pivot point. The pivot coordinate remains unchanged by the rotation transformation

| Parameters |
|---|---|
| `radians: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | to rotate clockwise |
| `pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset = center` | The coordinate for the pivot point, defaults to the center of the coordinate space |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | lambda that is called to issue drawing commands within the rotated coordinate space |

### DrawTransform.scale

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawTransform.kt+function:scale) Added in [1.10.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.10.0)

```
inline fun DrawTransform.scale(scale: Float, pivot: Offset = center): Unit
```

Add an axis-aligned scale to the current transform, scaling uniformly in both directions by the provided scale factor at the pivot coordinate. The pivot coordinate remains unchanged by the scale transformation.

| Parameters |
|---|---|
| `scale: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | The amount to scale |
| `pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset = center` | The coordinate for the pivot point, defaults to the center of the coordinate space |

### DrawScope.scale

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:scale)

```
inline fun DrawScope.scale(scale: Float, pivot: Offset = center, block: DrawScope.() -> Unit): Unit
```

Add an axis-aligned scale to the current transform, scaling both the horizontal direction and the vertical direction at the given pivot coordinate. The pivot coordinate remains unchanged by the scale transformation. After this method is invoked, the coordinate space is returned to the state before the scale was applied.

| Parameters |
|---|---|
| `scale: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | The amount to scale uniformly in both directions |
| `pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset = center` | The coordinate for the pivot point, defaults to the center of the coordinate space |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | lambda used to issue drawing commands within the scaled coordinate space |

### DrawScope.scale

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:scale)

```
inline fun DrawScope.scale(
    scaleX: Float,
    scaleY: Float,
    pivot: Offset = center,
    block: DrawScope.() -> Unit
): Unit
```

Add an axis-aligned scale to the current transform, scaling by the first argument in the horizontal direction and the second in the vertical direction at the given pivot coordinate. The pivot coordinate remains unchanged by the scale transformation. After this method is invoked, the coordinate space is returned to the state before the scale was applied.

| Parameters |
|---|---|
| `scaleX: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | The amount to scale in X |
| `scaleY: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html` | The amount to scale in Y |
| `pivot: https://developer.android.com/reference/kotlin/androidx/compose/ui/geometry/Offset = center` | The coordinate for the pivot point, defaults to the center of the coordinate space |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | lambda used to issue drawing commands within the scaled coordinate space |

### DrawScope.translate

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:translate) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
inline fun DrawScope.translate(left: Float = 0.0f, top: Float = 0.0f, block: DrawScope.() -> Unit): Unit
```

Translate the coordinate space by the given delta in pixels in both the x and y coordinates respectively

| Parameters |
|---|---|
| `left: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = 0.0f` | Pixels to translate the coordinate space in the x-axis |
| `top: https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-float/index.html = 0.0f` | Pixels to translate the coordinate space in the y-axis |
| `block: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | lambda that is called to issue drawing commands within the translated coordinate space |

### DrawScope.withTransform

Cmn Artifact: [androidx.compose.ui:ui-graphics](https://developer.android.com/jetpack/androidx/releases/compose-ui) [View Source](https://cs.android.com/search?q=file:androidx/compose/ui/graphics/drawscope/DrawScope.kt+function:withTransform) Added in [1.0.0](https://developer.android.com/jetpack/androidx/releases/compose-ui#1.0.0)

```
inline fun DrawScope.withTransform(transformBlock: DrawTransform.() -> Unit, drawBlock: DrawScope.() -> Unit): Unit
```

Perform 1 or more transformations and execute drawing commands with the specified transformations applied. After this call is complete, the transformation before this call was made is restored

```kotlin
import androidx.compose.foundation.Canvas
import androidx.compose.foundation.layout.size
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.graphics.drawscope.draw
import androidx.compose.ui.graphics.drawscope.inset
import androidx.compose.ui.graphics.drawscope.rotate
import androidx.compose.ui.graphics.drawscope.withTransform
import androidx.compose.ui.unit.dp

Canvas(Modifier.size(120.dp)) { // CanvasScope
    inset(20.0f) {
        // Use withTransform to batch multiple transformations for 1 or more drawing calls
        // that are to be drawn.
        // This is more efficient than issuing nested translation, rotation and scaling
        // calls as the internal state is saved once before and after instead of multiple
        // times between each transformation if done individually
        withTransform({
            translate(10.0f, 12.0f)
            rotate(45.0f, center)
            scale(2.0f, 0.5f)
        }) {
            drawRect(Color.Cyan)
            drawCircle(Color.Blue)
        }
        drawRect(Color.Red, alpha = 0.25f)
    }
}
```

| Parameters |
|---|---|
| `transformBlock: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawTransform.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | Callback invoked to issue transformations to be made before the drawing operations are issued |
| `drawBlock: https://developer.android.com/reference/kotlin/androidx/compose/ui/graphics/drawscope/DrawScope.() -> https://kotlinlang.org/api/core/kotlin-stdlib/kotlin/-unit/index.html` | Callback invoked to issue drawing operations after the transformations are applied |