# exposure-shadow icon

Exposure shadow. Gentleface icon, drawn on the 16 px pixel grid. Free, MIT licensed. Page: https://gentleface.com/icons/exposure-shadow

- Category: Photo & image
- Use it for: shadows adjustment, shadow exposure
- Tags: shadows, shadow adjustment, exposure, tone, dark, darks, photo, edit, adjust, camera
- Family: exposure, exposure-highlight, exposure-highlight-centered, exposure-shadow-centered
- Component name: ExposureShadowIcon
- Added: 2026-11-12

## Files

Each icon is drawn on the 16 px grid, and most also on the 20 and 24 px grids (at 24 in three weights: light 1 px, regular 1.5 px, bold 2 px). Show the drawing made for your size, or an exact multiple of it, on whole pixels: 16 for 16 and 32 px, 20 for 20 and 40, 24 for 24 and 48. A size in between or a fractional position blurs it. The code on each icon page is the 16 px drawing, an SVG with fill="currentColor"; the icon page's downloads follow its Grid switch, and npm has the 20 and 24 px drawings too.

- line-round: https://gentleface.com/svg/line-round/16/exposure-shadow.svg · PNG https://gentleface.com/png/line-round/16/exposure-shadow.png · https://gentleface.com/png/line-round/32/exposure-shadow.png · https://gentleface.com/png/line-round/48/exposure-shadow.png
- line-soft: https://gentleface.com/svg/line-soft/16/exposure-shadow.svg · PNG https://gentleface.com/png/line-soft/16/exposure-shadow.png · https://gentleface.com/png/line-soft/32/exposure-shadow.png · https://gentleface.com/png/line-soft/48/exposure-shadow.png
- line-sharp: https://gentleface.com/svg/line-sharp/16/exposure-shadow.svg · PNG https://gentleface.com/png/line-sharp/16/exposure-shadow.png · https://gentleface.com/png/line-sharp/32/exposure-shadow.png · https://gentleface.com/png/line-sharp/48/exposure-shadow.png
- solid-round: https://gentleface.com/svg/solid-round/16/exposure-shadow.svg · PNG https://gentleface.com/png/solid-round/16/exposure-shadow.png · https://gentleface.com/png/solid-round/32/exposure-shadow.png · https://gentleface.com/png/solid-round/48/exposure-shadow.png
- solid-soft: https://gentleface.com/svg/solid-soft/16/exposure-shadow.svg · PNG https://gentleface.com/png/solid-soft/16/exposure-shadow.png · https://gentleface.com/png/solid-soft/32/exposure-shadow.png · https://gentleface.com/png/solid-soft/48/exposure-shadow.png
- solid-sharp: https://gentleface.com/svg/solid-sharp/16/exposure-shadow.svg · PNG https://gentleface.com/png/solid-sharp/16/exposure-shadow.png · https://gentleface.com/png/solid-sharp/32/exposure-shadow.png · https://gentleface.com/png/solid-sharp/48/exposure-shadow.png

The SVG of every style: https://gentleface.com/icons/exposure-shadow.json (`svg`).

## Code (line-round)

The snippets are decorative (aria-hidden). For an icon that carries meaning on its own, such as an icon-only button, label the button, or give the SVG role="img" and an aria-label. For another style, take its SVG from the JSON and swap the path `d`.

### SVG

```svg
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true"><path d="M10.935 1.645C11.769 2.03 12.498 2.558 13.123 3.23C13.749 3.902 14.224 4.668 14.548 5.526C14.849 6.323 15 7.148 15 8C15 8.852 14.849 9.677 14.548 10.474C14.224 11.332 13.749 12.098 13.123 12.77C12.498 13.442 11.769 13.97 10.935 14.355C10.162 14.712 9.35 14.921 8.5 14.982C8.459 14.994 8.417 15 8.374 15L8 15C7.11 15 6.251 14.836 5.423 14.509C4.525 14.153 3.734 13.633 3.05 12.95C2.367 12.266 1.847 11.475 1.491 10.577C1.164 9.749 1 8.89 1 8C1 7.11 1.164 6.251 1.491 5.423C1.847 4.525 2.367 3.734 3.05 3.05C3.734 2.367 4.525 1.847 5.423 1.491C6.251 1.164 7.11 1 8 1L8.374 1C8.417 1 8.459 1.006 8.5 1.018C9.35 1.079 10.162 1.288 10.935 1.645ZM8 2C7.237 2 6.501 2.14 5.791 2.421C5.397 2.577 5.027 2.77 4.681 3L8 3L8 2ZM8 4L3.527 4C3.25 4.31 3.008 4.643 2.803 5L8 5L8 4ZM8 6L2.343 6C2.227 6.328 2.14 6.661 2.083 7L8 7L8 6ZM8 8L2 8C2 8.339 2.028 8.672 2.083 9L8 9L8 8ZM8 10L2.343 10C2.368 10.07 2.394 10.139 2.421 10.209C2.53 10.484 2.657 10.748 2.803 11L8 11L8 10ZM3.527 12C3.602 12.083 3.678 12.163 3.757 12.243C4.343 12.828 5.021 13.274 5.791 13.579C6.501 13.86 7.237 14 8 14L8 12L3.527 12Z"/></svg>
```

### React

```tsx
// Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow
import type { SVGProps } from 'react';

export function ExposureShadowIcon(props: SVGProps<SVGSVGElement>) {
  return (
    <svg xmlns="http://www.w3.org/2000/svg" width={16} height={16} viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" {...props}>
      <path d="M10.935 1.645C11.769 2.03 12.498 2.558 13.123 3.23C13.749 3.902 14.224 4.668 14.548 5.526C14.849 6.323 15 7.148 15 8C15 8.852 14.849 9.677 14.548 10.474C14.224 11.332 13.749 12.098 13.123 12.77C12.498 13.442 11.769 13.97 10.935 14.355C10.162 14.712 9.35 14.921 8.5 14.982C8.459 14.994 8.417 15 8.374 15L8 15C7.11 15 6.251 14.836 5.423 14.509C4.525 14.153 3.734 13.633 3.05 12.95C2.367 12.266 1.847 11.475 1.491 10.577C1.164 9.749 1 8.89 1 8C1 7.11 1.164 6.251 1.491 5.423C1.847 4.525 2.367 3.734 3.05 3.05C3.734 2.367 4.525 1.847 5.423 1.491C6.251 1.164 7.11 1 8 1L8.374 1C8.417 1 8.459 1.006 8.5 1.018C9.35 1.079 10.162 1.288 10.935 1.645ZM8 2C7.237 2 6.501 2.14 5.791 2.421C5.397 2.577 5.027 2.77 4.681 3L8 3L8 2ZM8 4L3.527 4C3.25 4.31 3.008 4.643 2.803 5L8 5L8 4ZM8 6L2.343 6C2.227 6.328 2.14 6.661 2.083 7L8 7L8 6ZM8 8L2 8C2 8.339 2.028 8.672 2.083 9L8 9L8 8ZM8 10L2.343 10C2.368 10.07 2.394 10.139 2.421 10.209C2.53 10.484 2.657 10.748 2.803 11L8 11L8 10ZM3.527 12C3.602 12.083 3.678 12.163 3.757 12.243C4.343 12.828 5.021 13.274 5.791 13.579C6.501 13.86 7.237 14 8 14L8 12L3.527 12Z" />
    </svg>
  );
}
```

### Vue

```vue
<!-- Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow -->
<template>
  <svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true">
    <path d="M10.935 1.645C11.769 2.03 12.498 2.558 13.123 3.23C13.749 3.902 14.224 4.668 14.548 5.526C14.849 6.323 15 7.148 15 8C15 8.852 14.849 9.677 14.548 10.474C14.224 11.332 13.749 12.098 13.123 12.77C12.498 13.442 11.769 13.97 10.935 14.355C10.162 14.712 9.35 14.921 8.5 14.982C8.459 14.994 8.417 15 8.374 15L8 15C7.11 15 6.251 14.836 5.423 14.509C4.525 14.153 3.734 13.633 3.05 12.95C2.367 12.266 1.847 11.475 1.491 10.577C1.164 9.749 1 8.89 1 8C1 7.11 1.164 6.251 1.491 5.423C1.847 4.525 2.367 3.734 3.05 3.05C3.734 2.367 4.525 1.847 5.423 1.491C6.251 1.164 7.11 1 8 1L8.374 1C8.417 1 8.459 1.006 8.5 1.018C9.35 1.079 10.162 1.288 10.935 1.645ZM8 2C7.237 2 6.501 2.14 5.791 2.421C5.397 2.577 5.027 2.77 4.681 3L8 3L8 2ZM8 4L3.527 4C3.25 4.31 3.008 4.643 2.803 5L8 5L8 4ZM8 6L2.343 6C2.227 6.328 2.14 6.661 2.083 7L8 7L8 6ZM8 8L2 8C2 8.339 2.028 8.672 2.083 9L8 9L8 8ZM8 10L2.343 10C2.368 10.07 2.394 10.139 2.421 10.209C2.53 10.484 2.657 10.748 2.803 11L8 11L8 10ZM3.527 12C3.602 12.083 3.678 12.163 3.757 12.243C4.343 12.828 5.021 13.274 5.791 13.579C6.501 13.86 7.237 14 8 14L8 12L3.527 12Z" />
  </svg>
</template>
```

### Svelte

```svelte
<!-- Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow -->
<script>
  let props = $props();
</script>

<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 16 16" fill="currentColor" aria-hidden="true" {...props}>
  <path d="M10.935 1.645C11.769 2.03 12.498 2.558 13.123 3.23C13.749 3.902 14.224 4.668 14.548 5.526C14.849 6.323 15 7.148 15 8C15 8.852 14.849 9.677 14.548 10.474C14.224 11.332 13.749 12.098 13.123 12.77C12.498 13.442 11.769 13.97 10.935 14.355C10.162 14.712 9.35 14.921 8.5 14.982C8.459 14.994 8.417 15 8.374 15L8 15C7.11 15 6.251 14.836 5.423 14.509C4.525 14.153 3.734 13.633 3.05 12.95C2.367 12.266 1.847 11.475 1.491 10.577C1.164 9.749 1 8.89 1 8C1 7.11 1.164 6.251 1.491 5.423C1.847 4.525 2.367 3.734 3.05 3.05C3.734 2.367 4.525 1.847 5.423 1.491C6.251 1.164 7.11 1 8 1L8.374 1C8.417 1 8.459 1.006 8.5 1.018C9.35 1.079 10.162 1.288 10.935 1.645ZM8 2C7.237 2 6.501 2.14 5.791 2.421C5.397 2.577 5.027 2.77 4.681 3L8 3L8 2ZM8 4L3.527 4C3.25 4.31 3.008 4.643 2.803 5L8 5L8 4ZM8 6L2.343 6C2.227 6.328 2.14 6.661 2.083 7L8 7L8 6ZM8 8L2 8C2 8.339 2.028 8.672 2.083 9L8 9L8 8ZM8 10L2.343 10C2.368 10.07 2.394 10.139 2.421 10.209C2.53 10.484 2.657 10.748 2.803 11L8 11L8 10ZM3.527 12C3.602 12.083 3.678 12.163 3.757 12.243C4.343 12.828 5.021 13.274 5.791 13.579C6.501 13.86 7.237 14 8 14L8 12L3.527 12Z" />
</svg>
```

### HTML img

```html
<!-- Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow. An <img> can't take currentColor: it draws black. Inline the SVG or use the CSS mask to color it. -->
<img src="https://gentleface.com/svg/line-round/16/exposure-shadow.svg" width="16" height="16" alt="">
```

### CSS

```css
/* Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow. Takes the text color. */
.icon-exposure-shadow {
  display: inline-block;
  width: 16px;
  height: 16px;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='currentColor'%3E%3Cpath d='M10.935 1.645C11.769 2.03 12.498 2.558 13.123 3.23C13.749 3.902 14.224 4.668 14.548 5.526C14.849 6.323 15 7.148 15 8C15 8.852 14.849 9.677 14.548 10.474C14.224 11.332 13.749 12.098 13.123 12.77C12.498 13.442 11.769 13.97 10.935 14.355C10.162 14.712 9.35 14.921 8.5 14.982C8.459 14.994 8.417 15 8.374 15L8 15C7.11 15 6.251 14.836 5.423 14.509C4.525 14.153 3.734 13.633 3.05 12.95C2.367 12.266 1.847 11.475 1.491 10.577C1.164 9.749 1 8.89 1 8C1 7.11 1.164 6.251 1.491 5.423C1.847 4.525 2.367 3.734 3.05 3.05C3.734 2.367 4.525 1.847 5.423 1.491C6.251 1.164 7.11 1 8 1L8.374 1C8.417 1 8.459 1.006 8.5 1.018C9.35 1.079 10.162 1.288 10.935 1.645ZM8 2C7.237 2 6.501 2.14 5.791 2.421C5.397 2.577 5.027 2.77 4.681 3L8 3L8 2ZM8 4L3.527 4C3.25 4.31 3.008 4.643 2.803 5L8 5L8 4ZM8 6L2.343 6C2.227 6.328 2.14 6.661 2.083 7L8 7L8 6ZM8 8L2 8C2 8.339 2.028 8.672 2.083 9L8 9L8 8ZM8 10L2.343 10C2.368 10.07 2.394 10.139 2.421 10.209C2.53 10.484 2.657 10.748 2.803 11L8 11L8 10ZM3.527 12C3.602 12.083 3.678 12.163 3.757 12.243C4.343 12.828 5.021 13.274 5.791 13.579C6.501 13.86 7.237 14 8 14L8 12L3.527 12Z'/%3E%3C/svg%3E") center / 16px 16px no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='currentColor'%3E%3Cpath d='M10.935 1.645C11.769 2.03 12.498 2.558 13.123 3.23C13.749 3.902 14.224 4.668 14.548 5.526C14.849 6.323 15 7.148 15 8C15 8.852 14.849 9.677 14.548 10.474C14.224 11.332 13.749 12.098 13.123 12.77C12.498 13.442 11.769 13.97 10.935 14.355C10.162 14.712 9.35 14.921 8.5 14.982C8.459 14.994 8.417 15 8.374 15L8 15C7.11 15 6.251 14.836 5.423 14.509C4.525 14.153 3.734 13.633 3.05 12.95C2.367 12.266 1.847 11.475 1.491 10.577C1.164 9.749 1 8.89 1 8C1 7.11 1.164 6.251 1.491 5.423C1.847 4.525 2.367 3.734 3.05 3.05C3.734 2.367 4.525 1.847 5.423 1.491C6.251 1.164 7.11 1 8 1L8.374 1C8.417 1 8.459 1.006 8.5 1.018C9.35 1.079 10.162 1.288 10.935 1.645ZM8 2C7.237 2 6.501 2.14 5.791 2.421C5.397 2.577 5.027 2.77 4.681 3L8 3L8 2ZM8 4L3.527 4C3.25 4.31 3.008 4.643 2.803 5L8 5L8 4ZM8 6L2.343 6C2.227 6.328 2.14 6.661 2.083 7L8 7L8 6ZM8 8L2 8C2 8.339 2.028 8.672 2.083 9L8 9L8 8ZM8 10L2.343 10C2.368 10.07 2.394 10.139 2.421 10.209C2.53 10.484 2.657 10.748 2.803 11L8 11L8 10ZM3.527 12C3.602 12.083 3.678 12.163 3.757 12.243C4.343 12.828 5.021 13.274 5.791 13.579C6.501 13.86 7.237 14 8 14L8 12L3.527 12Z'/%3E%3C/svg%3E") center / 16px 16px no-repeat;
}
```

### Data URL

```text
data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='currentColor'%3E%3Cpath d='M10.935 1.645C11.769 2.03 12.498 2.558 13.123 3.23C13.749 3.902 14.224 4.668 14.548 5.526C14.849 6.323 15 7.148 15 8C15 8.852 14.849 9.677 14.548 10.474C14.224 11.332 13.749 12.098 13.123 12.77C12.498 13.442 11.769 13.97 10.935 14.355C10.162 14.712 9.35 14.921 8.5 14.982C8.459 14.994 8.417 15 8.374 15L8 15C7.11 15 6.251 14.836 5.423 14.509C4.525 14.153 3.734 13.633 3.05 12.95C2.367 12.266 1.847 11.475 1.491 10.577C1.164 9.749 1 8.89 1 8C1 7.11 1.164 6.251 1.491 5.423C1.847 4.525 2.367 3.734 3.05 3.05C3.734 2.367 4.525 1.847 5.423 1.491C6.251 1.164 7.11 1 8 1L8.374 1C8.417 1 8.459 1.006 8.5 1.018C9.35 1.079 10.162 1.288 10.935 1.645ZM8 2C7.237 2 6.501 2.14 5.791 2.421C5.397 2.577 5.027 2.77 4.681 3L8 3L8 2ZM8 4L3.527 4C3.25 4.31 3.008 4.643 2.803 5L8 5L8 4ZM8 6L2.343 6C2.227 6.328 2.14 6.661 2.083 7L8 7L8 6ZM8 8L2 8C2 8.339 2.028 8.672 2.083 9L8 9L8 8ZM8 10L2.343 10C2.368 10.07 2.394 10.139 2.421 10.209C2.53 10.484 2.657 10.748 2.803 11L8 11L8 10ZM3.527 12C3.602 12.083 3.678 12.163 3.757 12.243C4.343 12.828 5.021 13.274 5.791 13.579C6.501 13.86 7.237 14 8 14L8 12L3.527 12Z'/%3E%3C/svg%3E
```

### Sprite

```html
<!-- Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow
     Every icon of this style in one file: https://gentleface.com/sprite/line-round.svg
     Serve it from your own origin: <use> does not load from another origin. -->
<svg width="16" height="16" aria-hidden="true"><use href="/sprite/line-round.svg#exposure-shadow"/></svg>
```

### SwiftUI

```swift
// Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow
import SwiftUI

struct ExposureShadowIcon: Shape {
    func path(in rect: CGRect) -> Path {
        var p = Path()
        p.move(to: CGPoint(x: 10.935, y: 1.645))
        p.addCurve(to: CGPoint(x: 13.123, y: 3.23), control1: CGPoint(x: 11.769, y: 2.03), control2: CGPoint(x: 12.498, y: 2.558))
        p.addCurve(to: CGPoint(x: 14.548, y: 5.526), control1: CGPoint(x: 13.749, y: 3.902), control2: CGPoint(x: 14.224, y: 4.668))
        p.addCurve(to: CGPoint(x: 15, y: 8), control1: CGPoint(x: 14.849, y: 6.323), control2: CGPoint(x: 15, y: 7.148))
        p.addCurve(to: CGPoint(x: 14.548, y: 10.474), control1: CGPoint(x: 15, y: 8.852), control2: CGPoint(x: 14.849, y: 9.677))
        p.addCurve(to: CGPoint(x: 13.123, y: 12.77), control1: CGPoint(x: 14.224, y: 11.332), control2: CGPoint(x: 13.749, y: 12.098))
        p.addCurve(to: CGPoint(x: 10.935, y: 14.355), control1: CGPoint(x: 12.498, y: 13.442), control2: CGPoint(x: 11.769, y: 13.97))
        p.addCurve(to: CGPoint(x: 8.5, y: 14.982), control1: CGPoint(x: 10.162, y: 14.712), control2: CGPoint(x: 9.35, y: 14.921))
        p.addCurve(to: CGPoint(x: 8.374, y: 15), control1: CGPoint(x: 8.459, y: 14.994), control2: CGPoint(x: 8.417, y: 15))
        p.addLine(to: CGPoint(x: 8, y: 15))
        p.addCurve(to: CGPoint(x: 5.423, y: 14.509), control1: CGPoint(x: 7.11, y: 15), control2: CGPoint(x: 6.251, y: 14.836))
        p.addCurve(to: CGPoint(x: 3.05, y: 12.95), control1: CGPoint(x: 4.525, y: 14.153), control2: CGPoint(x: 3.734, y: 13.633))
        p.addCurve(to: CGPoint(x: 1.491, y: 10.577), control1: CGPoint(x: 2.367, y: 12.266), control2: CGPoint(x: 1.847, y: 11.475))
        p.addCurve(to: CGPoint(x: 1, y: 8), control1: CGPoint(x: 1.164, y: 9.749), control2: CGPoint(x: 1, y: 8.89))
        p.addCurve(to: CGPoint(x: 1.491, y: 5.423), control1: CGPoint(x: 1, y: 7.11), control2: CGPoint(x: 1.164, y: 6.251))
        p.addCurve(to: CGPoint(x: 3.05, y: 3.05), control1: CGPoint(x: 1.847, y: 4.525), control2: CGPoint(x: 2.367, y: 3.734))
        p.addCurve(to: CGPoint(x: 5.423, y: 1.491), control1: CGPoint(x: 3.734, y: 2.367), control2: CGPoint(x: 4.525, y: 1.847))
        p.addCurve(to: CGPoint(x: 8, y: 1), control1: CGPoint(x: 6.251, y: 1.164), control2: CGPoint(x: 7.11, y: 1))
        p.addLine(to: CGPoint(x: 8.374, y: 1))
        p.addCurve(to: CGPoint(x: 8.5, y: 1.018), control1: CGPoint(x: 8.417, y: 1), control2: CGPoint(x: 8.459, y: 1.006))
        p.addCurve(to: CGPoint(x: 10.935, y: 1.645), control1: CGPoint(x: 9.35, y: 1.079), control2: CGPoint(x: 10.162, y: 1.288))
        p.closeSubpath()
        p.move(to: CGPoint(x: 8, y: 2))
        p.addCurve(to: CGPoint(x: 5.791, y: 2.421), control1: CGPoint(x: 7.237, y: 2), control2: CGPoint(x: 6.501, y: 2.14))
        p.addCurve(to: CGPoint(x: 4.681, y: 3), control1: CGPoint(x: 5.397, y: 2.577), control2: CGPoint(x: 5.027, y: 2.77))
        p.addLine(to: CGPoint(x: 8, y: 3))
        p.addLine(to: CGPoint(x: 8, y: 2))
        p.closeSubpath()
        p.move(to: CGPoint(x: 8, y: 4))
        p.addLine(to: CGPoint(x: 3.527, y: 4))
        p.addCurve(to: CGPoint(x: 2.803, y: 5), control1: CGPoint(x: 3.25, y: 4.31), control2: CGPoint(x: 3.008, y: 4.643))
        p.addLine(to: CGPoint(x: 8, y: 5))
        p.addLine(to: CGPoint(x: 8, y: 4))
        p.closeSubpath()
        p.move(to: CGPoint(x: 8, y: 6))
        p.addLine(to: CGPoint(x: 2.343, y: 6))
        p.addCurve(to: CGPoint(x: 2.083, y: 7), control1: CGPoint(x: 2.227, y: 6.328), control2: CGPoint(x: 2.14, y: 6.661))
        p.addLine(to: CGPoint(x: 8, y: 7))
        p.addLine(to: CGPoint(x: 8, y: 6))
        p.closeSubpath()
        p.move(to: CGPoint(x: 8, y: 8))
        p.addLine(to: CGPoint(x: 2, y: 8))
        p.addCurve(to: CGPoint(x: 2.083, y: 9), control1: CGPoint(x: 2, y: 8.339), control2: CGPoint(x: 2.028, y: 8.672))
        p.addLine(to: CGPoint(x: 8, y: 9))
        p.addLine(to: CGPoint(x: 8, y: 8))
        p.closeSubpath()
        p.move(to: CGPoint(x: 8, y: 10))
        p.addLine(to: CGPoint(x: 2.343, y: 10))
        p.addCurve(to: CGPoint(x: 2.421, y: 10.209), control1: CGPoint(x: 2.368, y: 10.07), control2: CGPoint(x: 2.394, y: 10.139))
        p.addCurve(to: CGPoint(x: 2.803, y: 11), control1: CGPoint(x: 2.53, y: 10.484), control2: CGPoint(x: 2.657, y: 10.748))
        p.addLine(to: CGPoint(x: 8, y: 11))
        p.addLine(to: CGPoint(x: 8, y: 10))
        p.closeSubpath()
        p.move(to: CGPoint(x: 3.527, y: 12))
        p.addCurve(to: CGPoint(x: 3.757, y: 12.243), control1: CGPoint(x: 3.602, y: 12.083), control2: CGPoint(x: 3.678, y: 12.163))
        p.addCurve(to: CGPoint(x: 5.791, y: 13.579), control1: CGPoint(x: 4.343, y: 12.828), control2: CGPoint(x: 5.021, y: 13.274))
        p.addCurve(to: CGPoint(x: 8, y: 14), control1: CGPoint(x: 6.501, y: 13.86), control2: CGPoint(x: 7.237, y: 14))
        p.addLine(to: CGPoint(x: 8, y: 12))
        p.addLine(to: CGPoint(x: 3.527, y: 12))
        p.closeSubpath()
        return p.applying(CGAffineTransform(scaleX: rect.width / 16, y: rect.height / 16))
    }
}

// ExposureShadowIcon().frame(width: 16, height: 16) fills with the foreground style. Keep it on whole points to stay crisp.
```

### Compose

```kotlin
// Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow
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.addPathNodes
import androidx.compose.ui.unit.dp

val ExposureShadowIcon: ImageVector by lazy {
    ImageVector.Builder(
        name = "exposure-shadow", defaultWidth = 16.dp, defaultHeight = 16.dp,
        viewportWidth = 16f, viewportHeight = 16f,
    ).addPath(
        pathData = addPathNodes("M10.935 1.645C11.769 2.03 12.498 2.558 13.123 3.23C13.749 3.902 14.224 4.668 14.548 5.526C14.849 6.323 15 7.148 15 8C15 8.852 14.849 9.677 14.548 10.474C14.224 11.332 13.749 12.098 13.123 12.77C12.498 13.442 11.769 13.97 10.935 14.355C10.162 14.712 9.35 14.921 8.5 14.982C8.459 14.994 8.417 15 8.374 15L8 15C7.11 15 6.251 14.836 5.423 14.509C4.525 14.153 3.734 13.633 3.05 12.95C2.367 12.266 1.847 11.475 1.491 10.577C1.164 9.749 1 8.89 1 8C1 7.11 1.164 6.251 1.491 5.423C1.847 4.525 2.367 3.734 3.05 3.05C3.734 2.367 4.525 1.847 5.423 1.491C6.251 1.164 7.11 1 8 1L8.374 1C8.417 1 8.459 1.006 8.5 1.018C9.35 1.079 10.162 1.288 10.935 1.645ZM8 2C7.237 2 6.501 2.14 5.791 2.421C5.397 2.577 5.027 2.77 4.681 3L8 3L8 2ZM8 4L3.527 4C3.25 4.31 3.008 4.643 2.803 5L8 5L8 4ZM8 6L2.343 6C2.227 6.328 2.14 6.661 2.083 7L8 7L8 6ZM8 8L2 8C2 8.339 2.028 8.672 2.083 9L8 9L8 8ZM8 10L2.343 10C2.368 10.07 2.394 10.139 2.421 10.209C2.53 10.484 2.657 10.748 2.803 11L8 11L8 10ZM3.527 12C3.602 12.083 3.678 12.163 3.757 12.243C4.343 12.828 5.021 13.274 5.791 13.579C6.501 13.86 7.237 14 8 14L8 12L3.527 12Z"),
        fill = SolidColor(Color.Black),
    ).build()
}

// Icon(ExposureShadowIcon, contentDescription = null) tints it with LocalContentColor.
```

### Android XML

```xml
<!-- res/drawable/ic_exposure_shadow.xml · Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="16dp"
    android:height="16dp"
    android:viewportWidth="16"
    android:viewportHeight="16"
    android:tint="?attr/colorControlNormal">
  <path
      android:fillColor="@android:color/white"
      android:pathData="M10.935 1.645C11.769 2.03 12.498 2.558 13.123 3.23C13.749 3.902 14.224 4.668 14.548 5.526C14.849 6.323 15 7.148 15 8C15 8.852 14.849 9.677 14.548 10.474C14.224 11.332 13.749 12.098 13.123 12.77C12.498 13.442 11.769 13.97 10.935 14.355C10.162 14.712 9.35 14.921 8.5 14.982C8.459 14.994 8.417 15 8.374 15L8 15C7.11 15 6.251 14.836 5.423 14.509C4.525 14.153 3.734 13.633 3.05 12.95C2.367 12.266 1.847 11.475 1.491 10.577C1.164 9.749 1 8.89 1 8C1 7.11 1.164 6.251 1.491 5.423C1.847 4.525 2.367 3.734 3.05 3.05C3.734 2.367 4.525 1.847 5.423 1.491C6.251 1.164 7.11 1 8 1L8.374 1C8.417 1 8.459 1.006 8.5 1.018C9.35 1.079 10.162 1.288 10.935 1.645ZM8 2C7.237 2 6.501 2.14 5.791 2.421C5.397 2.577 5.027 2.77 4.681 3L8 3L8 2ZM8 4L3.527 4C3.25 4.31 3.008 4.643 2.803 5L8 5L8 4ZM8 6L2.343 6C2.227 6.328 2.14 6.661 2.083 7L8 7L8 6ZM8 8L2 8C2 8.339 2.028 8.672 2.083 9L8 9L8 8ZM8 10L2.343 10C2.368 10.07 2.394 10.139 2.421 10.209C2.53 10.484 2.657 10.748 2.803 11L8 11L8 10ZM3.527 12C3.602 12.083 3.678 12.163 3.757 12.243C4.343 12.828 5.021 13.274 5.791 13.579C6.501 13.86 7.237 14 8 14L8 12L3.527 12Z"/>
</vector>
```

### Flutter

```dart
// Gentleface "exposure-shadow" (line-round), MIT. https://gentleface.com/icons/exposure-shadow
import 'package:flutter/widgets.dart';

class ExposureShadowIcon extends StatelessWidget {
  const ExposureShadowIcon({super.key, this.size = 16, this.color});
  final double size;
  final Color? color;

  @override
  Widget build(BuildContext context) => CustomPaint(
        size: Size.square(size),
        painter: _ExposureShadowIconPainter(color ?? IconTheme.of(context).color ?? const Color(0xFF000000)),
      );
}

class _ExposureShadowIconPainter extends CustomPainter {
  _ExposureShadowIconPainter(this.color);
  final Color color;

  @override
  void paint(Canvas canvas, Size size) {
    canvas.scale(size.width / 16, size.height / 16);
    final p = Path()
      ..moveTo(10.935, 1.645)
      ..cubicTo(11.769, 2.03, 12.498, 2.558, 13.123, 3.23)
      ..cubicTo(13.749, 3.902, 14.224, 4.668, 14.548, 5.526)
      ..cubicTo(14.849, 6.323, 15, 7.148, 15, 8)
      ..cubicTo(15, 8.852, 14.849, 9.677, 14.548, 10.474)
      ..cubicTo(14.224, 11.332, 13.749, 12.098, 13.123, 12.77)
      ..cubicTo(12.498, 13.442, 11.769, 13.97, 10.935, 14.355)
      ..cubicTo(10.162, 14.712, 9.35, 14.921, 8.5, 14.982)
      ..cubicTo(8.459, 14.994, 8.417, 15, 8.374, 15)
      ..lineTo(8, 15)
      ..cubicTo(7.11, 15, 6.251, 14.836, 5.423, 14.509)
      ..cubicTo(4.525, 14.153, 3.734, 13.633, 3.05, 12.95)
      ..cubicTo(2.367, 12.266, 1.847, 11.475, 1.491, 10.577)
      ..cubicTo(1.164, 9.749, 1, 8.89, 1, 8)
      ..cubicTo(1, 7.11, 1.164, 6.251, 1.491, 5.423)
      ..cubicTo(1.847, 4.525, 2.367, 3.734, 3.05, 3.05)
      ..cubicTo(3.734, 2.367, 4.525, 1.847, 5.423, 1.491)
      ..cubicTo(6.251, 1.164, 7.11, 1, 8, 1)
      ..lineTo(8.374, 1)
      ..cubicTo(8.417, 1, 8.459, 1.006, 8.5, 1.018)
      ..cubicTo(9.35, 1.079, 10.162, 1.288, 10.935, 1.645)
      ..close()
      ..moveTo(8, 2)
      ..cubicTo(7.237, 2, 6.501, 2.14, 5.791, 2.421)
      ..cubicTo(5.397, 2.577, 5.027, 2.77, 4.681, 3)
      ..lineTo(8, 3)
      ..lineTo(8, 2)
      ..close()
      ..moveTo(8, 4)
      ..lineTo(3.527, 4)
      ..cubicTo(3.25, 4.31, 3.008, 4.643, 2.803, 5)
      ..lineTo(8, 5)
      ..lineTo(8, 4)
      ..close()
      ..moveTo(8, 6)
      ..lineTo(2.343, 6)
      ..cubicTo(2.227, 6.328, 2.14, 6.661, 2.083, 7)
      ..lineTo(8, 7)
      ..lineTo(8, 6)
      ..close()
      ..moveTo(8, 8)
      ..lineTo(2, 8)
      ..cubicTo(2, 8.339, 2.028, 8.672, 2.083, 9)
      ..lineTo(8, 9)
      ..lineTo(8, 8)
      ..close()
      ..moveTo(8, 10)
      ..lineTo(2.343, 10)
      ..cubicTo(2.368, 10.07, 2.394, 10.139, 2.421, 10.209)
      ..cubicTo(2.53, 10.484, 2.657, 10.748, 2.803, 11)
      ..lineTo(8, 11)
      ..lineTo(8, 10)
      ..close()
      ..moveTo(3.527, 12)
      ..cubicTo(3.602, 12.083, 3.678, 12.163, 3.757, 12.243)
      ..cubicTo(4.343, 12.828, 5.021, 13.274, 5.791, 13.579)
      ..cubicTo(6.501, 13.86, 7.237, 14, 8, 14)
      ..lineTo(8, 12)
      ..lineTo(3.527, 12)
      ..close();
    canvas.drawPath(p, Paint()..color = color);
  }

  @override
  bool shouldRepaint(_ExposureShadowIconPainter old) => old.color != color;
}
```
