<div class='type'>Compose Modifier</div>

<a id='references'></a>


<h2 id="dropshadow-shape-shadow">dropShadow</h2>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.dropShadow(shape: Shape, shadow: Shadow): Modifier
```


Draws a drop shadow behind the rest of the content with the geometry specified by the given shape
and the shadow properties defined by the `Shadow`. This is different than `Modifier.shadow` as
this does not introduce a graphicsLayer to render elevation based shadows. This shadow is
rendered without a single light source and will render consistently regardless of the on screen
position of the content.

#### Parameters

| | |
| --- | --- |
| shape | Geometry of the shadow |
| shadow | Properties of the shadow like radius, spread, offset, and fill properties like the color or brush |






<hr class="docs-overload-divider">


<h2 id="dropshadow-shape-block">dropShadow</h2>

<div class='sourceset sourceset-common'>Common</div>


```kotlin
fun Modifier.dropShadow(shape: Shape, block: DropShadowScope.() -> Unit) =
    this then BlockDropShadowElement(shape, block)
```


Draws a drop shadow behind the rest of the content with the geometry specified by the given shape
and the shadow properties defined the `DropShadowScope`. This is different than `Modifier.shadow`
as this does not introduce a graphicsLayer to render elevation based shadows. This shadow is
rendered without a single light source and will render consistently regardless of the on screen
position of the content. This is similar to `Modifier.dropShadow` except that specification of
drop shadow parameters is done with the lambda with `DropShadowScope` allows for more efficient
transformations for animated use cases without recomposition.

#### Parameters

| | |
| --- | --- |
| shape | Geometry of the shadow |
| block | `DropShadowScope` block where shadow properties are defined |