# fan icon

Fan. Gentleface icon, drawn on the 16 px pixel grid. Free, MIT licensed. Page: https://gentleface.com/icons/fan

- Category: Home & household
- Use it for: fan, ventilation, ceiling fan, desk fan, fan speed, mode fan
- Tags: fan, ventilation, air, cooling, blades, airflow, propeller, appliance
- Component name: FanIcon
- Added: 2026-10-15

## Alternatives

- `air-vent`: air conditioning
- `wind`: wind as weather, or airflow

## Also fits

- air purifier: a fan or ventilation
- air conditioning: a fan or ventilation without cooling
- air: ventilation

## Files

Each SVG is 16 × 16 with fill="currentColor". Keep it at 16 px or an exact multiple (32, 48) on whole pixels: a fractional size or position blurs it.

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

The SVG of every style: https://gentleface.com/icons/fan.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.5 14C10.641 14 10.759 14.048 10.856 14.144C10.952 14.241 11 14.359 11 14.5C11 14.641 10.952 14.759 10.856 14.856C10.759 14.952 10.641 15 10.5 15L4.5 15C4.359 15 4.241 14.952 4.144 14.856C4.048 14.759 4 14.641 4 14.5C4 14.359 4.048 14.241 4.144 14.144C4.241 14.048 4.359 14 4.5 14L7 14L7 11.978C6.478 11.931 5.969 11.809 5.475 11.614C4.769 11.334 4.148 10.926 3.611 10.389C3.074 9.852 2.666 9.231 2.386 8.525C2.129 7.874 2 7.199 2 6.5C2 5.801 2.129 5.126 2.386 4.475C2.666 3.769 3.074 3.148 3.611 2.611C4.148 2.074 4.769 1.666 5.475 1.386C6.126 1.129 6.801 1 7.5 1C8.199 1 8.874 1.129 9.525 1.386C10.231 1.666 10.852 2.074 11.389 2.611C11.926 3.148 12.334 3.769 12.614 4.475C12.871 5.126 13 5.801 13 6.5C13 7.199 12.871 7.874 12.614 8.525C12.334 9.231 11.926 9.852 11.389 10.389C10.852 10.926 10.231 11.334 9.525 11.614C9.031 11.809 8.522 11.931 8 11.978L8 14L10.5 14ZM4.318 9.682C4.757 10.121 5.266 10.455 5.844 10.684C6.376 10.895 6.928 11 7.5 11C8.072 11 8.624 10.895 9.156 10.684C9.734 10.455 10.243 10.121 10.682 9.682C11.121 9.243 11.455 8.734 11.684 8.156C11.895 7.624 12 7.072 12 6.5C12 5.928 11.895 5.376 11.684 4.844C11.455 4.266 11.121 3.757 10.682 3.318C10.243 2.879 9.734 2.545 9.156 2.316C8.624 2.105 8.072 2 7.5 2C6.928 2 6.376 2.105 5.844 2.316C5.266 2.545 4.757 2.879 4.318 3.318C3.879 3.757 3.545 4.266 3.316 4.844C3.105 5.376 3 5.928 3 6.5C3 7.072 3.105 7.624 3.316 8.156C3.545 8.734 3.879 9.243 4.318 9.682ZM6.301 3.739C6.402 3.511 6.555 3.332 6.759 3.202C6.972 3.067 7.219 3 7.5 3C7.781 3 8.028 3.067 8.241 3.202C8.445 3.332 8.598 3.511 8.699 3.739C8.801 3.969 8.838 4.225 8.811 4.505C8.782 4.801 8.683 5.098 8.514 5.395C8.725 5.588 8.869 5.823 8.945 6.099C9.242 6.089 9.51 6.131 9.748 6.224C9.98 6.314 10.168 6.446 10.313 6.62C10.621 6.991 10.683 7.451 10.5 8C10.406 8.282 10.261 8.497 10.065 8.645C9.878 8.786 9.664 8.852 9.423 8.843C9.182 8.834 8.943 8.751 8.706 8.594C8.456 8.429 8.234 8.197 8.041 7.899C7.867 7.966 7.687 8 7.5 8C7.313 8 7.133 7.966 6.959 7.899C6.766 8.197 6.544 8.429 6.294 8.594C6.057 8.751 5.818 8.834 5.577 8.843C5.336 8.852 5.122 8.786 4.935 8.645C4.739 8.497 4.594 8.282 4.5 8C4.317 7.451 4.379 6.991 4.687 6.62C4.832 6.446 5.02 6.314 5.252 6.224C5.49 6.131 5.758 6.089 6.055 6.099C6.131 5.823 6.275 5.588 6.486 5.395C6.317 5.098 6.218 4.801 6.189 4.505C6.162 4.225 6.199 3.969 6.301 3.739Z"/></svg>
```

### React

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

export function FanIcon(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.5 14C10.641 14 10.759 14.048 10.856 14.144C10.952 14.241 11 14.359 11 14.5C11 14.641 10.952 14.759 10.856 14.856C10.759 14.952 10.641 15 10.5 15L4.5 15C4.359 15 4.241 14.952 4.144 14.856C4.048 14.759 4 14.641 4 14.5C4 14.359 4.048 14.241 4.144 14.144C4.241 14.048 4.359 14 4.5 14L7 14L7 11.978C6.478 11.931 5.969 11.809 5.475 11.614C4.769 11.334 4.148 10.926 3.611 10.389C3.074 9.852 2.666 9.231 2.386 8.525C2.129 7.874 2 7.199 2 6.5C2 5.801 2.129 5.126 2.386 4.475C2.666 3.769 3.074 3.148 3.611 2.611C4.148 2.074 4.769 1.666 5.475 1.386C6.126 1.129 6.801 1 7.5 1C8.199 1 8.874 1.129 9.525 1.386C10.231 1.666 10.852 2.074 11.389 2.611C11.926 3.148 12.334 3.769 12.614 4.475C12.871 5.126 13 5.801 13 6.5C13 7.199 12.871 7.874 12.614 8.525C12.334 9.231 11.926 9.852 11.389 10.389C10.852 10.926 10.231 11.334 9.525 11.614C9.031 11.809 8.522 11.931 8 11.978L8 14L10.5 14ZM4.318 9.682C4.757 10.121 5.266 10.455 5.844 10.684C6.376 10.895 6.928 11 7.5 11C8.072 11 8.624 10.895 9.156 10.684C9.734 10.455 10.243 10.121 10.682 9.682C11.121 9.243 11.455 8.734 11.684 8.156C11.895 7.624 12 7.072 12 6.5C12 5.928 11.895 5.376 11.684 4.844C11.455 4.266 11.121 3.757 10.682 3.318C10.243 2.879 9.734 2.545 9.156 2.316C8.624 2.105 8.072 2 7.5 2C6.928 2 6.376 2.105 5.844 2.316C5.266 2.545 4.757 2.879 4.318 3.318C3.879 3.757 3.545 4.266 3.316 4.844C3.105 5.376 3 5.928 3 6.5C3 7.072 3.105 7.624 3.316 8.156C3.545 8.734 3.879 9.243 4.318 9.682ZM6.301 3.739C6.402 3.511 6.555 3.332 6.759 3.202C6.972 3.067 7.219 3 7.5 3C7.781 3 8.028 3.067 8.241 3.202C8.445 3.332 8.598 3.511 8.699 3.739C8.801 3.969 8.838 4.225 8.811 4.505C8.782 4.801 8.683 5.098 8.514 5.395C8.725 5.588 8.869 5.823 8.945 6.099C9.242 6.089 9.51 6.131 9.748 6.224C9.98 6.314 10.168 6.446 10.313 6.62C10.621 6.991 10.683 7.451 10.5 8C10.406 8.282 10.261 8.497 10.065 8.645C9.878 8.786 9.664 8.852 9.423 8.843C9.182 8.834 8.943 8.751 8.706 8.594C8.456 8.429 8.234 8.197 8.041 7.899C7.867 7.966 7.687 8 7.5 8C7.313 8 7.133 7.966 6.959 7.899C6.766 8.197 6.544 8.429 6.294 8.594C6.057 8.751 5.818 8.834 5.577 8.843C5.336 8.852 5.122 8.786 4.935 8.645C4.739 8.497 4.594 8.282 4.5 8C4.317 7.451 4.379 6.991 4.687 6.62C4.832 6.446 5.02 6.314 5.252 6.224C5.49 6.131 5.758 6.089 6.055 6.099C6.131 5.823 6.275 5.588 6.486 5.395C6.317 5.098 6.218 4.801 6.189 4.505C6.162 4.225 6.199 3.969 6.301 3.739Z" />
    </svg>
  );
}
```

### Vue

```vue
<!-- Gentleface "fan" (line-round), MIT. https://gentleface.com/icons/fan -->
<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.5 14C10.641 14 10.759 14.048 10.856 14.144C10.952 14.241 11 14.359 11 14.5C11 14.641 10.952 14.759 10.856 14.856C10.759 14.952 10.641 15 10.5 15L4.5 15C4.359 15 4.241 14.952 4.144 14.856C4.048 14.759 4 14.641 4 14.5C4 14.359 4.048 14.241 4.144 14.144C4.241 14.048 4.359 14 4.5 14L7 14L7 11.978C6.478 11.931 5.969 11.809 5.475 11.614C4.769 11.334 4.148 10.926 3.611 10.389C3.074 9.852 2.666 9.231 2.386 8.525C2.129 7.874 2 7.199 2 6.5C2 5.801 2.129 5.126 2.386 4.475C2.666 3.769 3.074 3.148 3.611 2.611C4.148 2.074 4.769 1.666 5.475 1.386C6.126 1.129 6.801 1 7.5 1C8.199 1 8.874 1.129 9.525 1.386C10.231 1.666 10.852 2.074 11.389 2.611C11.926 3.148 12.334 3.769 12.614 4.475C12.871 5.126 13 5.801 13 6.5C13 7.199 12.871 7.874 12.614 8.525C12.334 9.231 11.926 9.852 11.389 10.389C10.852 10.926 10.231 11.334 9.525 11.614C9.031 11.809 8.522 11.931 8 11.978L8 14L10.5 14ZM4.318 9.682C4.757 10.121 5.266 10.455 5.844 10.684C6.376 10.895 6.928 11 7.5 11C8.072 11 8.624 10.895 9.156 10.684C9.734 10.455 10.243 10.121 10.682 9.682C11.121 9.243 11.455 8.734 11.684 8.156C11.895 7.624 12 7.072 12 6.5C12 5.928 11.895 5.376 11.684 4.844C11.455 4.266 11.121 3.757 10.682 3.318C10.243 2.879 9.734 2.545 9.156 2.316C8.624 2.105 8.072 2 7.5 2C6.928 2 6.376 2.105 5.844 2.316C5.266 2.545 4.757 2.879 4.318 3.318C3.879 3.757 3.545 4.266 3.316 4.844C3.105 5.376 3 5.928 3 6.5C3 7.072 3.105 7.624 3.316 8.156C3.545 8.734 3.879 9.243 4.318 9.682ZM6.301 3.739C6.402 3.511 6.555 3.332 6.759 3.202C6.972 3.067 7.219 3 7.5 3C7.781 3 8.028 3.067 8.241 3.202C8.445 3.332 8.598 3.511 8.699 3.739C8.801 3.969 8.838 4.225 8.811 4.505C8.782 4.801 8.683 5.098 8.514 5.395C8.725 5.588 8.869 5.823 8.945 6.099C9.242 6.089 9.51 6.131 9.748 6.224C9.98 6.314 10.168 6.446 10.313 6.62C10.621 6.991 10.683 7.451 10.5 8C10.406 8.282 10.261 8.497 10.065 8.645C9.878 8.786 9.664 8.852 9.423 8.843C9.182 8.834 8.943 8.751 8.706 8.594C8.456 8.429 8.234 8.197 8.041 7.899C7.867 7.966 7.687 8 7.5 8C7.313 8 7.133 7.966 6.959 7.899C6.766 8.197 6.544 8.429 6.294 8.594C6.057 8.751 5.818 8.834 5.577 8.843C5.336 8.852 5.122 8.786 4.935 8.645C4.739 8.497 4.594 8.282 4.5 8C4.317 7.451 4.379 6.991 4.687 6.62C4.832 6.446 5.02 6.314 5.252 6.224C5.49 6.131 5.758 6.089 6.055 6.099C6.131 5.823 6.275 5.588 6.486 5.395C6.317 5.098 6.218 4.801 6.189 4.505C6.162 4.225 6.199 3.969 6.301 3.739Z" />
  </svg>
</template>
```

### Svelte

```svelte
<!-- Gentleface "fan" (line-round), MIT. https://gentleface.com/icons/fan -->
<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.5 14C10.641 14 10.759 14.048 10.856 14.144C10.952 14.241 11 14.359 11 14.5C11 14.641 10.952 14.759 10.856 14.856C10.759 14.952 10.641 15 10.5 15L4.5 15C4.359 15 4.241 14.952 4.144 14.856C4.048 14.759 4 14.641 4 14.5C4 14.359 4.048 14.241 4.144 14.144C4.241 14.048 4.359 14 4.5 14L7 14L7 11.978C6.478 11.931 5.969 11.809 5.475 11.614C4.769 11.334 4.148 10.926 3.611 10.389C3.074 9.852 2.666 9.231 2.386 8.525C2.129 7.874 2 7.199 2 6.5C2 5.801 2.129 5.126 2.386 4.475C2.666 3.769 3.074 3.148 3.611 2.611C4.148 2.074 4.769 1.666 5.475 1.386C6.126 1.129 6.801 1 7.5 1C8.199 1 8.874 1.129 9.525 1.386C10.231 1.666 10.852 2.074 11.389 2.611C11.926 3.148 12.334 3.769 12.614 4.475C12.871 5.126 13 5.801 13 6.5C13 7.199 12.871 7.874 12.614 8.525C12.334 9.231 11.926 9.852 11.389 10.389C10.852 10.926 10.231 11.334 9.525 11.614C9.031 11.809 8.522 11.931 8 11.978L8 14L10.5 14ZM4.318 9.682C4.757 10.121 5.266 10.455 5.844 10.684C6.376 10.895 6.928 11 7.5 11C8.072 11 8.624 10.895 9.156 10.684C9.734 10.455 10.243 10.121 10.682 9.682C11.121 9.243 11.455 8.734 11.684 8.156C11.895 7.624 12 7.072 12 6.5C12 5.928 11.895 5.376 11.684 4.844C11.455 4.266 11.121 3.757 10.682 3.318C10.243 2.879 9.734 2.545 9.156 2.316C8.624 2.105 8.072 2 7.5 2C6.928 2 6.376 2.105 5.844 2.316C5.266 2.545 4.757 2.879 4.318 3.318C3.879 3.757 3.545 4.266 3.316 4.844C3.105 5.376 3 5.928 3 6.5C3 7.072 3.105 7.624 3.316 8.156C3.545 8.734 3.879 9.243 4.318 9.682ZM6.301 3.739C6.402 3.511 6.555 3.332 6.759 3.202C6.972 3.067 7.219 3 7.5 3C7.781 3 8.028 3.067 8.241 3.202C8.445 3.332 8.598 3.511 8.699 3.739C8.801 3.969 8.838 4.225 8.811 4.505C8.782 4.801 8.683 5.098 8.514 5.395C8.725 5.588 8.869 5.823 8.945 6.099C9.242 6.089 9.51 6.131 9.748 6.224C9.98 6.314 10.168 6.446 10.313 6.62C10.621 6.991 10.683 7.451 10.5 8C10.406 8.282 10.261 8.497 10.065 8.645C9.878 8.786 9.664 8.852 9.423 8.843C9.182 8.834 8.943 8.751 8.706 8.594C8.456 8.429 8.234 8.197 8.041 7.899C7.867 7.966 7.687 8 7.5 8C7.313 8 7.133 7.966 6.959 7.899C6.766 8.197 6.544 8.429 6.294 8.594C6.057 8.751 5.818 8.834 5.577 8.843C5.336 8.852 5.122 8.786 4.935 8.645C4.739 8.497 4.594 8.282 4.5 8C4.317 7.451 4.379 6.991 4.687 6.62C4.832 6.446 5.02 6.314 5.252 6.224C5.49 6.131 5.758 6.089 6.055 6.099C6.131 5.823 6.275 5.588 6.486 5.395C6.317 5.098 6.218 4.801 6.189 4.505C6.162 4.225 6.199 3.969 6.301 3.739Z" />
</svg>
```

### HTML img

```html
<!-- Gentleface "fan" (line-round), MIT. https://gentleface.com/icons/fan. 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/fan.svg" width="16" height="16" alt="">
```

### CSS

```css
/* Gentleface "fan" (line-round), MIT. https://gentleface.com/icons/fan. Takes the text color. */
.icon-fan {
  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.5 14C10.641 14 10.759 14.048 10.856 14.144C10.952 14.241 11 14.359 11 14.5C11 14.641 10.952 14.759 10.856 14.856C10.759 14.952 10.641 15 10.5 15L4.5 15C4.359 15 4.241 14.952 4.144 14.856C4.048 14.759 4 14.641 4 14.5C4 14.359 4.048 14.241 4.144 14.144C4.241 14.048 4.359 14 4.5 14L7 14L7 11.978C6.478 11.931 5.969 11.809 5.475 11.614C4.769 11.334 4.148 10.926 3.611 10.389C3.074 9.852 2.666 9.231 2.386 8.525C2.129 7.874 2 7.199 2 6.5C2 5.801 2.129 5.126 2.386 4.475C2.666 3.769 3.074 3.148 3.611 2.611C4.148 2.074 4.769 1.666 5.475 1.386C6.126 1.129 6.801 1 7.5 1C8.199 1 8.874 1.129 9.525 1.386C10.231 1.666 10.852 2.074 11.389 2.611C11.926 3.148 12.334 3.769 12.614 4.475C12.871 5.126 13 5.801 13 6.5C13 7.199 12.871 7.874 12.614 8.525C12.334 9.231 11.926 9.852 11.389 10.389C10.852 10.926 10.231 11.334 9.525 11.614C9.031 11.809 8.522 11.931 8 11.978L8 14L10.5 14ZM4.318 9.682C4.757 10.121 5.266 10.455 5.844 10.684C6.376 10.895 6.928 11 7.5 11C8.072 11 8.624 10.895 9.156 10.684C9.734 10.455 10.243 10.121 10.682 9.682C11.121 9.243 11.455 8.734 11.684 8.156C11.895 7.624 12 7.072 12 6.5C12 5.928 11.895 5.376 11.684 4.844C11.455 4.266 11.121 3.757 10.682 3.318C10.243 2.879 9.734 2.545 9.156 2.316C8.624 2.105 8.072 2 7.5 2C6.928 2 6.376 2.105 5.844 2.316C5.266 2.545 4.757 2.879 4.318 3.318C3.879 3.757 3.545 4.266 3.316 4.844C3.105 5.376 3 5.928 3 6.5C3 7.072 3.105 7.624 3.316 8.156C3.545 8.734 3.879 9.243 4.318 9.682ZM6.301 3.739C6.402 3.511 6.555 3.332 6.759 3.202C6.972 3.067 7.219 3 7.5 3C7.781 3 8.028 3.067 8.241 3.202C8.445 3.332 8.598 3.511 8.699 3.739C8.801 3.969 8.838 4.225 8.811 4.505C8.782 4.801 8.683 5.098 8.514 5.395C8.725 5.588 8.869 5.823 8.945 6.099C9.242 6.089 9.51 6.131 9.748 6.224C9.98 6.314 10.168 6.446 10.313 6.62C10.621 6.991 10.683 7.451 10.5 8C10.406 8.282 10.261 8.497 10.065 8.645C9.878 8.786 9.664 8.852 9.423 8.843C9.182 8.834 8.943 8.751 8.706 8.594C8.456 8.429 8.234 8.197 8.041 7.899C7.867 7.966 7.687 8 7.5 8C7.313 8 7.133 7.966 6.959 7.899C6.766 8.197 6.544 8.429 6.294 8.594C6.057 8.751 5.818 8.834 5.577 8.843C5.336 8.852 5.122 8.786 4.935 8.645C4.739 8.497 4.594 8.282 4.5 8C4.317 7.451 4.379 6.991 4.687 6.62C4.832 6.446 5.02 6.314 5.252 6.224C5.49 6.131 5.758 6.089 6.055 6.099C6.131 5.823 6.275 5.588 6.486 5.395C6.317 5.098 6.218 4.801 6.189 4.505C6.162 4.225 6.199 3.969 6.301 3.739Z'/%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.5 14C10.641 14 10.759 14.048 10.856 14.144C10.952 14.241 11 14.359 11 14.5C11 14.641 10.952 14.759 10.856 14.856C10.759 14.952 10.641 15 10.5 15L4.5 15C4.359 15 4.241 14.952 4.144 14.856C4.048 14.759 4 14.641 4 14.5C4 14.359 4.048 14.241 4.144 14.144C4.241 14.048 4.359 14 4.5 14L7 14L7 11.978C6.478 11.931 5.969 11.809 5.475 11.614C4.769 11.334 4.148 10.926 3.611 10.389C3.074 9.852 2.666 9.231 2.386 8.525C2.129 7.874 2 7.199 2 6.5C2 5.801 2.129 5.126 2.386 4.475C2.666 3.769 3.074 3.148 3.611 2.611C4.148 2.074 4.769 1.666 5.475 1.386C6.126 1.129 6.801 1 7.5 1C8.199 1 8.874 1.129 9.525 1.386C10.231 1.666 10.852 2.074 11.389 2.611C11.926 3.148 12.334 3.769 12.614 4.475C12.871 5.126 13 5.801 13 6.5C13 7.199 12.871 7.874 12.614 8.525C12.334 9.231 11.926 9.852 11.389 10.389C10.852 10.926 10.231 11.334 9.525 11.614C9.031 11.809 8.522 11.931 8 11.978L8 14L10.5 14ZM4.318 9.682C4.757 10.121 5.266 10.455 5.844 10.684C6.376 10.895 6.928 11 7.5 11C8.072 11 8.624 10.895 9.156 10.684C9.734 10.455 10.243 10.121 10.682 9.682C11.121 9.243 11.455 8.734 11.684 8.156C11.895 7.624 12 7.072 12 6.5C12 5.928 11.895 5.376 11.684 4.844C11.455 4.266 11.121 3.757 10.682 3.318C10.243 2.879 9.734 2.545 9.156 2.316C8.624 2.105 8.072 2 7.5 2C6.928 2 6.376 2.105 5.844 2.316C5.266 2.545 4.757 2.879 4.318 3.318C3.879 3.757 3.545 4.266 3.316 4.844C3.105 5.376 3 5.928 3 6.5C3 7.072 3.105 7.624 3.316 8.156C3.545 8.734 3.879 9.243 4.318 9.682ZM6.301 3.739C6.402 3.511 6.555 3.332 6.759 3.202C6.972 3.067 7.219 3 7.5 3C7.781 3 8.028 3.067 8.241 3.202C8.445 3.332 8.598 3.511 8.699 3.739C8.801 3.969 8.838 4.225 8.811 4.505C8.782 4.801 8.683 5.098 8.514 5.395C8.725 5.588 8.869 5.823 8.945 6.099C9.242 6.089 9.51 6.131 9.748 6.224C9.98 6.314 10.168 6.446 10.313 6.62C10.621 6.991 10.683 7.451 10.5 8C10.406 8.282 10.261 8.497 10.065 8.645C9.878 8.786 9.664 8.852 9.423 8.843C9.182 8.834 8.943 8.751 8.706 8.594C8.456 8.429 8.234 8.197 8.041 7.899C7.867 7.966 7.687 8 7.5 8C7.313 8 7.133 7.966 6.959 7.899C6.766 8.197 6.544 8.429 6.294 8.594C6.057 8.751 5.818 8.834 5.577 8.843C5.336 8.852 5.122 8.786 4.935 8.645C4.739 8.497 4.594 8.282 4.5 8C4.317 7.451 4.379 6.991 4.687 6.62C4.832 6.446 5.02 6.314 5.252 6.224C5.49 6.131 5.758 6.089 6.055 6.099C6.131 5.823 6.275 5.588 6.486 5.395C6.317 5.098 6.218 4.801 6.189 4.505C6.162 4.225 6.199 3.969 6.301 3.739Z'/%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.5 14C10.641 14 10.759 14.048 10.856 14.144C10.952 14.241 11 14.359 11 14.5C11 14.641 10.952 14.759 10.856 14.856C10.759 14.952 10.641 15 10.5 15L4.5 15C4.359 15 4.241 14.952 4.144 14.856C4.048 14.759 4 14.641 4 14.5C4 14.359 4.048 14.241 4.144 14.144C4.241 14.048 4.359 14 4.5 14L7 14L7 11.978C6.478 11.931 5.969 11.809 5.475 11.614C4.769 11.334 4.148 10.926 3.611 10.389C3.074 9.852 2.666 9.231 2.386 8.525C2.129 7.874 2 7.199 2 6.5C2 5.801 2.129 5.126 2.386 4.475C2.666 3.769 3.074 3.148 3.611 2.611C4.148 2.074 4.769 1.666 5.475 1.386C6.126 1.129 6.801 1 7.5 1C8.199 1 8.874 1.129 9.525 1.386C10.231 1.666 10.852 2.074 11.389 2.611C11.926 3.148 12.334 3.769 12.614 4.475C12.871 5.126 13 5.801 13 6.5C13 7.199 12.871 7.874 12.614 8.525C12.334 9.231 11.926 9.852 11.389 10.389C10.852 10.926 10.231 11.334 9.525 11.614C9.031 11.809 8.522 11.931 8 11.978L8 14L10.5 14ZM4.318 9.682C4.757 10.121 5.266 10.455 5.844 10.684C6.376 10.895 6.928 11 7.5 11C8.072 11 8.624 10.895 9.156 10.684C9.734 10.455 10.243 10.121 10.682 9.682C11.121 9.243 11.455 8.734 11.684 8.156C11.895 7.624 12 7.072 12 6.5C12 5.928 11.895 5.376 11.684 4.844C11.455 4.266 11.121 3.757 10.682 3.318C10.243 2.879 9.734 2.545 9.156 2.316C8.624 2.105 8.072 2 7.5 2C6.928 2 6.376 2.105 5.844 2.316C5.266 2.545 4.757 2.879 4.318 3.318C3.879 3.757 3.545 4.266 3.316 4.844C3.105 5.376 3 5.928 3 6.5C3 7.072 3.105 7.624 3.316 8.156C3.545 8.734 3.879 9.243 4.318 9.682ZM6.301 3.739C6.402 3.511 6.555 3.332 6.759 3.202C6.972 3.067 7.219 3 7.5 3C7.781 3 8.028 3.067 8.241 3.202C8.445 3.332 8.598 3.511 8.699 3.739C8.801 3.969 8.838 4.225 8.811 4.505C8.782 4.801 8.683 5.098 8.514 5.395C8.725 5.588 8.869 5.823 8.945 6.099C9.242 6.089 9.51 6.131 9.748 6.224C9.98 6.314 10.168 6.446 10.313 6.62C10.621 6.991 10.683 7.451 10.5 8C10.406 8.282 10.261 8.497 10.065 8.645C9.878 8.786 9.664 8.852 9.423 8.843C9.182 8.834 8.943 8.751 8.706 8.594C8.456 8.429 8.234 8.197 8.041 7.899C7.867 7.966 7.687 8 7.5 8C7.313 8 7.133 7.966 6.959 7.899C6.766 8.197 6.544 8.429 6.294 8.594C6.057 8.751 5.818 8.834 5.577 8.843C5.336 8.852 5.122 8.786 4.935 8.645C4.739 8.497 4.594 8.282 4.5 8C4.317 7.451 4.379 6.991 4.687 6.62C4.832 6.446 5.02 6.314 5.252 6.224C5.49 6.131 5.758 6.089 6.055 6.099C6.131 5.823 6.275 5.588 6.486 5.395C6.317 5.098 6.218 4.801 6.189 4.505C6.162 4.225 6.199 3.969 6.301 3.739Z'/%3E%3C/svg%3E
```

### Sprite

```html
<!-- Gentleface "fan" (line-round), MIT. https://gentleface.com/icons/fan
     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#fan"/></svg>
```

### SwiftUI

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

struct FanIcon: Shape {
    func path(in rect: CGRect) -> Path {
        var p = Path()
        p.move(to: CGPoint(x: 10.5, y: 14))
        p.addCurve(to: CGPoint(x: 10.856, y: 14.144), control1: CGPoint(x: 10.641, y: 14), control2: CGPoint(x: 10.759, y: 14.048))
        p.addCurve(to: CGPoint(x: 11, y: 14.5), control1: CGPoint(x: 10.952, y: 14.241), control2: CGPoint(x: 11, y: 14.359))
        p.addCurve(to: CGPoint(x: 10.856, y: 14.856), control1: CGPoint(x: 11, y: 14.641), control2: CGPoint(x: 10.952, y: 14.759))
        p.addCurve(to: CGPoint(x: 10.5, y: 15), control1: CGPoint(x: 10.759, y: 14.952), control2: CGPoint(x: 10.641, y: 15))
        p.addLine(to: CGPoint(x: 4.5, y: 15))
        p.addCurve(to: CGPoint(x: 4.144, y: 14.856), control1: CGPoint(x: 4.359, y: 15), control2: CGPoint(x: 4.241, y: 14.952))
        p.addCurve(to: CGPoint(x: 4, y: 14.5), control1: CGPoint(x: 4.048, y: 14.759), control2: CGPoint(x: 4, y: 14.641))
        p.addCurve(to: CGPoint(x: 4.144, y: 14.144), control1: CGPoint(x: 4, y: 14.359), control2: CGPoint(x: 4.048, y: 14.241))
        p.addCurve(to: CGPoint(x: 4.5, y: 14), control1: CGPoint(x: 4.241, y: 14.048), control2: CGPoint(x: 4.359, y: 14))
        p.addLine(to: CGPoint(x: 7, y: 14))
        p.addLine(to: CGPoint(x: 7, y: 11.978))
        p.addCurve(to: CGPoint(x: 5.475, y: 11.614), control1: CGPoint(x: 6.478, y: 11.931), control2: CGPoint(x: 5.969, y: 11.809))
        p.addCurve(to: CGPoint(x: 3.611, y: 10.389), control1: CGPoint(x: 4.769, y: 11.334), control2: CGPoint(x: 4.148, y: 10.926))
        p.addCurve(to: CGPoint(x: 2.386, y: 8.525), control1: CGPoint(x: 3.074, y: 9.852), control2: CGPoint(x: 2.666, y: 9.231))
        p.addCurve(to: CGPoint(x: 2, y: 6.5), control1: CGPoint(x: 2.129, y: 7.874), control2: CGPoint(x: 2, y: 7.199))
        p.addCurve(to: CGPoint(x: 2.386, y: 4.475), control1: CGPoint(x: 2, y: 5.801), control2: CGPoint(x: 2.129, y: 5.126))
        p.addCurve(to: CGPoint(x: 3.611, y: 2.611), control1: CGPoint(x: 2.666, y: 3.769), control2: CGPoint(x: 3.074, y: 3.148))
        p.addCurve(to: CGPoint(x: 5.475, y: 1.386), control1: CGPoint(x: 4.148, y: 2.074), control2: CGPoint(x: 4.769, y: 1.666))
        p.addCurve(to: CGPoint(x: 7.5, y: 1), control1: CGPoint(x: 6.126, y: 1.129), control2: CGPoint(x: 6.801, y: 1))
        p.addCurve(to: CGPoint(x: 9.525, y: 1.386), control1: CGPoint(x: 8.199, y: 1), control2: CGPoint(x: 8.874, y: 1.129))
        p.addCurve(to: CGPoint(x: 11.389, y: 2.611), control1: CGPoint(x: 10.231, y: 1.666), control2: CGPoint(x: 10.852, y: 2.074))
        p.addCurve(to: CGPoint(x: 12.614, y: 4.475), control1: CGPoint(x: 11.926, y: 3.148), control2: CGPoint(x: 12.334, y: 3.769))
        p.addCurve(to: CGPoint(x: 13, y: 6.5), control1: CGPoint(x: 12.871, y: 5.126), control2: CGPoint(x: 13, y: 5.801))
        p.addCurve(to: CGPoint(x: 12.614, y: 8.525), control1: CGPoint(x: 13, y: 7.199), control2: CGPoint(x: 12.871, y: 7.874))
        p.addCurve(to: CGPoint(x: 11.389, y: 10.389), control1: CGPoint(x: 12.334, y: 9.231), control2: CGPoint(x: 11.926, y: 9.852))
        p.addCurve(to: CGPoint(x: 9.525, y: 11.614), control1: CGPoint(x: 10.852, y: 10.926), control2: CGPoint(x: 10.231, y: 11.334))
        p.addCurve(to: CGPoint(x: 8, y: 11.978), control1: CGPoint(x: 9.031, y: 11.809), control2: CGPoint(x: 8.522, y: 11.931))
        p.addLine(to: CGPoint(x: 8, y: 14))
        p.addLine(to: CGPoint(x: 10.5, y: 14))
        p.closeSubpath()
        p.move(to: CGPoint(x: 4.318, y: 9.682))
        p.addCurve(to: CGPoint(x: 5.844, y: 10.684), control1: CGPoint(x: 4.757, y: 10.121), control2: CGPoint(x: 5.266, y: 10.455))
        p.addCurve(to: CGPoint(x: 7.5, y: 11), control1: CGPoint(x: 6.376, y: 10.895), control2: CGPoint(x: 6.928, y: 11))
        p.addCurve(to: CGPoint(x: 9.156, y: 10.684), control1: CGPoint(x: 8.072, y: 11), control2: CGPoint(x: 8.624, y: 10.895))
        p.addCurve(to: CGPoint(x: 10.682, y: 9.682), control1: CGPoint(x: 9.734, y: 10.455), control2: CGPoint(x: 10.243, y: 10.121))
        p.addCurve(to: CGPoint(x: 11.684, y: 8.156), control1: CGPoint(x: 11.121, y: 9.243), control2: CGPoint(x: 11.455, y: 8.734))
        p.addCurve(to: CGPoint(x: 12, y: 6.5), control1: CGPoint(x: 11.895, y: 7.624), control2: CGPoint(x: 12, y: 7.072))
        p.addCurve(to: CGPoint(x: 11.684, y: 4.844), control1: CGPoint(x: 12, y: 5.928), control2: CGPoint(x: 11.895, y: 5.376))
        p.addCurve(to: CGPoint(x: 10.682, y: 3.318), control1: CGPoint(x: 11.455, y: 4.266), control2: CGPoint(x: 11.121, y: 3.757))
        p.addCurve(to: CGPoint(x: 9.156, y: 2.316), control1: CGPoint(x: 10.243, y: 2.879), control2: CGPoint(x: 9.734, y: 2.545))
        p.addCurve(to: CGPoint(x: 7.5, y: 2), control1: CGPoint(x: 8.624, y: 2.105), control2: CGPoint(x: 8.072, y: 2))
        p.addCurve(to: CGPoint(x: 5.844, y: 2.316), control1: CGPoint(x: 6.928, y: 2), control2: CGPoint(x: 6.376, y: 2.105))
        p.addCurve(to: CGPoint(x: 4.318, y: 3.318), control1: CGPoint(x: 5.266, y: 2.545), control2: CGPoint(x: 4.757, y: 2.879))
        p.addCurve(to: CGPoint(x: 3.316, y: 4.844), control1: CGPoint(x: 3.879, y: 3.757), control2: CGPoint(x: 3.545, y: 4.266))
        p.addCurve(to: CGPoint(x: 3, y: 6.5), control1: CGPoint(x: 3.105, y: 5.376), control2: CGPoint(x: 3, y: 5.928))
        p.addCurve(to: CGPoint(x: 3.316, y: 8.156), control1: CGPoint(x: 3, y: 7.072), control2: CGPoint(x: 3.105, y: 7.624))
        p.addCurve(to: CGPoint(x: 4.318, y: 9.682), control1: CGPoint(x: 3.545, y: 8.734), control2: CGPoint(x: 3.879, y: 9.243))
        p.closeSubpath()
        p.move(to: CGPoint(x: 6.301, y: 3.739))
        p.addCurve(to: CGPoint(x: 6.759, y: 3.202), control1: CGPoint(x: 6.402, y: 3.511), control2: CGPoint(x: 6.555, y: 3.332))
        p.addCurve(to: CGPoint(x: 7.5, y: 3), control1: CGPoint(x: 6.972, y: 3.067), control2: CGPoint(x: 7.219, y: 3))
        p.addCurve(to: CGPoint(x: 8.241, y: 3.202), control1: CGPoint(x: 7.781, y: 3), control2: CGPoint(x: 8.028, y: 3.067))
        p.addCurve(to: CGPoint(x: 8.699, y: 3.739), control1: CGPoint(x: 8.445, y: 3.332), control2: CGPoint(x: 8.598, y: 3.511))
        p.addCurve(to: CGPoint(x: 8.811, y: 4.505), control1: CGPoint(x: 8.801, y: 3.969), control2: CGPoint(x: 8.838, y: 4.225))
        p.addCurve(to: CGPoint(x: 8.514, y: 5.395), control1: CGPoint(x: 8.782, y: 4.801), control2: CGPoint(x: 8.683, y: 5.098))
        p.addCurve(to: CGPoint(x: 8.945, y: 6.099), control1: CGPoint(x: 8.725, y: 5.588), control2: CGPoint(x: 8.869, y: 5.823))
        p.addCurve(to: CGPoint(x: 9.748, y: 6.224), control1: CGPoint(x: 9.242, y: 6.089), control2: CGPoint(x: 9.51, y: 6.131))
        p.addCurve(to: CGPoint(x: 10.313, y: 6.62), control1: CGPoint(x: 9.98, y: 6.314), control2: CGPoint(x: 10.168, y: 6.446))
        p.addCurve(to: CGPoint(x: 10.5, y: 8), control1: CGPoint(x: 10.621, y: 6.991), control2: CGPoint(x: 10.683, y: 7.451))
        p.addCurve(to: CGPoint(x: 10.065, y: 8.645), control1: CGPoint(x: 10.406, y: 8.282), control2: CGPoint(x: 10.261, y: 8.497))
        p.addCurve(to: CGPoint(x: 9.423, y: 8.843), control1: CGPoint(x: 9.878, y: 8.786), control2: CGPoint(x: 9.664, y: 8.852))
        p.addCurve(to: CGPoint(x: 8.706, y: 8.594), control1: CGPoint(x: 9.182, y: 8.834), control2: CGPoint(x: 8.943, y: 8.751))
        p.addCurve(to: CGPoint(x: 8.041, y: 7.899), control1: CGPoint(x: 8.456, y: 8.429), control2: CGPoint(x: 8.234, y: 8.197))
        p.addCurve(to: CGPoint(x: 7.5, y: 8), control1: CGPoint(x: 7.867, y: 7.966), control2: CGPoint(x: 7.687, y: 8))
        p.addCurve(to: CGPoint(x: 6.959, y: 7.899), control1: CGPoint(x: 7.313, y: 8), control2: CGPoint(x: 7.133, y: 7.966))
        p.addCurve(to: CGPoint(x: 6.294, y: 8.594), control1: CGPoint(x: 6.766, y: 8.197), control2: CGPoint(x: 6.544, y: 8.429))
        p.addCurve(to: CGPoint(x: 5.577, y: 8.843), control1: CGPoint(x: 6.057, y: 8.751), control2: CGPoint(x: 5.818, y: 8.834))
        p.addCurve(to: CGPoint(x: 4.935, y: 8.645), control1: CGPoint(x: 5.336, y: 8.852), control2: CGPoint(x: 5.122, y: 8.786))
        p.addCurve(to: CGPoint(x: 4.5, y: 8), control1: CGPoint(x: 4.739, y: 8.497), control2: CGPoint(x: 4.594, y: 8.282))
        p.addCurve(to: CGPoint(x: 4.687, y: 6.62), control1: CGPoint(x: 4.317, y: 7.451), control2: CGPoint(x: 4.379, y: 6.991))
        p.addCurve(to: CGPoint(x: 5.252, y: 6.224), control1: CGPoint(x: 4.832, y: 6.446), control2: CGPoint(x: 5.02, y: 6.314))
        p.addCurve(to: CGPoint(x: 6.055, y: 6.099), control1: CGPoint(x: 5.49, y: 6.131), control2: CGPoint(x: 5.758, y: 6.089))
        p.addCurve(to: CGPoint(x: 6.486, y: 5.395), control1: CGPoint(x: 6.131, y: 5.823), control2: CGPoint(x: 6.275, y: 5.588))
        p.addCurve(to: CGPoint(x: 6.189, y: 4.505), control1: CGPoint(x: 6.317, y: 5.098), control2: CGPoint(x: 6.218, y: 4.801))
        p.addCurve(to: CGPoint(x: 6.301, y: 3.739), control1: CGPoint(x: 6.162, y: 4.225), control2: CGPoint(x: 6.199, y: 3.969))
        p.closeSubpath()
        return p.applying(CGAffineTransform(scaleX: rect.width / 16, y: rect.height / 16))
    }
}

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

### Compose

```kotlin
// Gentleface "fan" (line-round), MIT. https://gentleface.com/icons/fan
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 FanIcon: ImageVector by lazy {
    ImageVector.Builder(
        name = "fan", defaultWidth = 16.dp, defaultHeight = 16.dp,
        viewportWidth = 16f, viewportHeight = 16f,
    ).addPath(
        pathData = addPathNodes("M10.5 14C10.641 14 10.759 14.048 10.856 14.144C10.952 14.241 11 14.359 11 14.5C11 14.641 10.952 14.759 10.856 14.856C10.759 14.952 10.641 15 10.5 15L4.5 15C4.359 15 4.241 14.952 4.144 14.856C4.048 14.759 4 14.641 4 14.5C4 14.359 4.048 14.241 4.144 14.144C4.241 14.048 4.359 14 4.5 14L7 14L7 11.978C6.478 11.931 5.969 11.809 5.475 11.614C4.769 11.334 4.148 10.926 3.611 10.389C3.074 9.852 2.666 9.231 2.386 8.525C2.129 7.874 2 7.199 2 6.5C2 5.801 2.129 5.126 2.386 4.475C2.666 3.769 3.074 3.148 3.611 2.611C4.148 2.074 4.769 1.666 5.475 1.386C6.126 1.129 6.801 1 7.5 1C8.199 1 8.874 1.129 9.525 1.386C10.231 1.666 10.852 2.074 11.389 2.611C11.926 3.148 12.334 3.769 12.614 4.475C12.871 5.126 13 5.801 13 6.5C13 7.199 12.871 7.874 12.614 8.525C12.334 9.231 11.926 9.852 11.389 10.389C10.852 10.926 10.231 11.334 9.525 11.614C9.031 11.809 8.522 11.931 8 11.978L8 14L10.5 14ZM4.318 9.682C4.757 10.121 5.266 10.455 5.844 10.684C6.376 10.895 6.928 11 7.5 11C8.072 11 8.624 10.895 9.156 10.684C9.734 10.455 10.243 10.121 10.682 9.682C11.121 9.243 11.455 8.734 11.684 8.156C11.895 7.624 12 7.072 12 6.5C12 5.928 11.895 5.376 11.684 4.844C11.455 4.266 11.121 3.757 10.682 3.318C10.243 2.879 9.734 2.545 9.156 2.316C8.624 2.105 8.072 2 7.5 2C6.928 2 6.376 2.105 5.844 2.316C5.266 2.545 4.757 2.879 4.318 3.318C3.879 3.757 3.545 4.266 3.316 4.844C3.105 5.376 3 5.928 3 6.5C3 7.072 3.105 7.624 3.316 8.156C3.545 8.734 3.879 9.243 4.318 9.682ZM6.301 3.739C6.402 3.511 6.555 3.332 6.759 3.202C6.972 3.067 7.219 3 7.5 3C7.781 3 8.028 3.067 8.241 3.202C8.445 3.332 8.598 3.511 8.699 3.739C8.801 3.969 8.838 4.225 8.811 4.505C8.782 4.801 8.683 5.098 8.514 5.395C8.725 5.588 8.869 5.823 8.945 6.099C9.242 6.089 9.51 6.131 9.748 6.224C9.98 6.314 10.168 6.446 10.313 6.62C10.621 6.991 10.683 7.451 10.5 8C10.406 8.282 10.261 8.497 10.065 8.645C9.878 8.786 9.664 8.852 9.423 8.843C9.182 8.834 8.943 8.751 8.706 8.594C8.456 8.429 8.234 8.197 8.041 7.899C7.867 7.966 7.687 8 7.5 8C7.313 8 7.133 7.966 6.959 7.899C6.766 8.197 6.544 8.429 6.294 8.594C6.057 8.751 5.818 8.834 5.577 8.843C5.336 8.852 5.122 8.786 4.935 8.645C4.739 8.497 4.594 8.282 4.5 8C4.317 7.451 4.379 6.991 4.687 6.62C4.832 6.446 5.02 6.314 5.252 6.224C5.49 6.131 5.758 6.089 6.055 6.099C6.131 5.823 6.275 5.588 6.486 5.395C6.317 5.098 6.218 4.801 6.189 4.505C6.162 4.225 6.199 3.969 6.301 3.739Z"),
        fill = SolidColor(Color.Black),
    ).build()
}

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

### Android XML

```xml
<!-- res/drawable/ic_fan.xml · Gentleface "fan" (line-round), MIT. https://gentleface.com/icons/fan -->
<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.5 14C10.641 14 10.759 14.048 10.856 14.144C10.952 14.241 11 14.359 11 14.5C11 14.641 10.952 14.759 10.856 14.856C10.759 14.952 10.641 15 10.5 15L4.5 15C4.359 15 4.241 14.952 4.144 14.856C4.048 14.759 4 14.641 4 14.5C4 14.359 4.048 14.241 4.144 14.144C4.241 14.048 4.359 14 4.5 14L7 14L7 11.978C6.478 11.931 5.969 11.809 5.475 11.614C4.769 11.334 4.148 10.926 3.611 10.389C3.074 9.852 2.666 9.231 2.386 8.525C2.129 7.874 2 7.199 2 6.5C2 5.801 2.129 5.126 2.386 4.475C2.666 3.769 3.074 3.148 3.611 2.611C4.148 2.074 4.769 1.666 5.475 1.386C6.126 1.129 6.801 1 7.5 1C8.199 1 8.874 1.129 9.525 1.386C10.231 1.666 10.852 2.074 11.389 2.611C11.926 3.148 12.334 3.769 12.614 4.475C12.871 5.126 13 5.801 13 6.5C13 7.199 12.871 7.874 12.614 8.525C12.334 9.231 11.926 9.852 11.389 10.389C10.852 10.926 10.231 11.334 9.525 11.614C9.031 11.809 8.522 11.931 8 11.978L8 14L10.5 14ZM4.318 9.682C4.757 10.121 5.266 10.455 5.844 10.684C6.376 10.895 6.928 11 7.5 11C8.072 11 8.624 10.895 9.156 10.684C9.734 10.455 10.243 10.121 10.682 9.682C11.121 9.243 11.455 8.734 11.684 8.156C11.895 7.624 12 7.072 12 6.5C12 5.928 11.895 5.376 11.684 4.844C11.455 4.266 11.121 3.757 10.682 3.318C10.243 2.879 9.734 2.545 9.156 2.316C8.624 2.105 8.072 2 7.5 2C6.928 2 6.376 2.105 5.844 2.316C5.266 2.545 4.757 2.879 4.318 3.318C3.879 3.757 3.545 4.266 3.316 4.844C3.105 5.376 3 5.928 3 6.5C3 7.072 3.105 7.624 3.316 8.156C3.545 8.734 3.879 9.243 4.318 9.682ZM6.301 3.739C6.402 3.511 6.555 3.332 6.759 3.202C6.972 3.067 7.219 3 7.5 3C7.781 3 8.028 3.067 8.241 3.202C8.445 3.332 8.598 3.511 8.699 3.739C8.801 3.969 8.838 4.225 8.811 4.505C8.782 4.801 8.683 5.098 8.514 5.395C8.725 5.588 8.869 5.823 8.945 6.099C9.242 6.089 9.51 6.131 9.748 6.224C9.98 6.314 10.168 6.446 10.313 6.62C10.621 6.991 10.683 7.451 10.5 8C10.406 8.282 10.261 8.497 10.065 8.645C9.878 8.786 9.664 8.852 9.423 8.843C9.182 8.834 8.943 8.751 8.706 8.594C8.456 8.429 8.234 8.197 8.041 7.899C7.867 7.966 7.687 8 7.5 8C7.313 8 7.133 7.966 6.959 7.899C6.766 8.197 6.544 8.429 6.294 8.594C6.057 8.751 5.818 8.834 5.577 8.843C5.336 8.852 5.122 8.786 4.935 8.645C4.739 8.497 4.594 8.282 4.5 8C4.317 7.451 4.379 6.991 4.687 6.62C4.832 6.446 5.02 6.314 5.252 6.224C5.49 6.131 5.758 6.089 6.055 6.099C6.131 5.823 6.275 5.588 6.486 5.395C6.317 5.098 6.218 4.801 6.189 4.505C6.162 4.225 6.199 3.969 6.301 3.739Z"/>
</vector>
```

### Flutter

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

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

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

class _FanIconPainter extends CustomPainter {
  _FanIconPainter(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.5, 14)
      ..cubicTo(10.641, 14, 10.759, 14.048, 10.856, 14.144)
      ..cubicTo(10.952, 14.241, 11, 14.359, 11, 14.5)
      ..cubicTo(11, 14.641, 10.952, 14.759, 10.856, 14.856)
      ..cubicTo(10.759, 14.952, 10.641, 15, 10.5, 15)
      ..lineTo(4.5, 15)
      ..cubicTo(4.359, 15, 4.241, 14.952, 4.144, 14.856)
      ..cubicTo(4.048, 14.759, 4, 14.641, 4, 14.5)
      ..cubicTo(4, 14.359, 4.048, 14.241, 4.144, 14.144)
      ..cubicTo(4.241, 14.048, 4.359, 14, 4.5, 14)
      ..lineTo(7, 14)
      ..lineTo(7, 11.978)
      ..cubicTo(6.478, 11.931, 5.969, 11.809, 5.475, 11.614)
      ..cubicTo(4.769, 11.334, 4.148, 10.926, 3.611, 10.389)
      ..cubicTo(3.074, 9.852, 2.666, 9.231, 2.386, 8.525)
      ..cubicTo(2.129, 7.874, 2, 7.199, 2, 6.5)
      ..cubicTo(2, 5.801, 2.129, 5.126, 2.386, 4.475)
      ..cubicTo(2.666, 3.769, 3.074, 3.148, 3.611, 2.611)
      ..cubicTo(4.148, 2.074, 4.769, 1.666, 5.475, 1.386)
      ..cubicTo(6.126, 1.129, 6.801, 1, 7.5, 1)
      ..cubicTo(8.199, 1, 8.874, 1.129, 9.525, 1.386)
      ..cubicTo(10.231, 1.666, 10.852, 2.074, 11.389, 2.611)
      ..cubicTo(11.926, 3.148, 12.334, 3.769, 12.614, 4.475)
      ..cubicTo(12.871, 5.126, 13, 5.801, 13, 6.5)
      ..cubicTo(13, 7.199, 12.871, 7.874, 12.614, 8.525)
      ..cubicTo(12.334, 9.231, 11.926, 9.852, 11.389, 10.389)
      ..cubicTo(10.852, 10.926, 10.231, 11.334, 9.525, 11.614)
      ..cubicTo(9.031, 11.809, 8.522, 11.931, 8, 11.978)
      ..lineTo(8, 14)
      ..lineTo(10.5, 14)
      ..close()
      ..moveTo(4.318, 9.682)
      ..cubicTo(4.757, 10.121, 5.266, 10.455, 5.844, 10.684)
      ..cubicTo(6.376, 10.895, 6.928, 11, 7.5, 11)
      ..cubicTo(8.072, 11, 8.624, 10.895, 9.156, 10.684)
      ..cubicTo(9.734, 10.455, 10.243, 10.121, 10.682, 9.682)
      ..cubicTo(11.121, 9.243, 11.455, 8.734, 11.684, 8.156)
      ..cubicTo(11.895, 7.624, 12, 7.072, 12, 6.5)
      ..cubicTo(12, 5.928, 11.895, 5.376, 11.684, 4.844)
      ..cubicTo(11.455, 4.266, 11.121, 3.757, 10.682, 3.318)
      ..cubicTo(10.243, 2.879, 9.734, 2.545, 9.156, 2.316)
      ..cubicTo(8.624, 2.105, 8.072, 2, 7.5, 2)
      ..cubicTo(6.928, 2, 6.376, 2.105, 5.844, 2.316)
      ..cubicTo(5.266, 2.545, 4.757, 2.879, 4.318, 3.318)
      ..cubicTo(3.879, 3.757, 3.545, 4.266, 3.316, 4.844)
      ..cubicTo(3.105, 5.376, 3, 5.928, 3, 6.5)
      ..cubicTo(3, 7.072, 3.105, 7.624, 3.316, 8.156)
      ..cubicTo(3.545, 8.734, 3.879, 9.243, 4.318, 9.682)
      ..close()
      ..moveTo(6.301, 3.739)
      ..cubicTo(6.402, 3.511, 6.555, 3.332, 6.759, 3.202)
      ..cubicTo(6.972, 3.067, 7.219, 3, 7.5, 3)
      ..cubicTo(7.781, 3, 8.028, 3.067, 8.241, 3.202)
      ..cubicTo(8.445, 3.332, 8.598, 3.511, 8.699, 3.739)
      ..cubicTo(8.801, 3.969, 8.838, 4.225, 8.811, 4.505)
      ..cubicTo(8.782, 4.801, 8.683, 5.098, 8.514, 5.395)
      ..cubicTo(8.725, 5.588, 8.869, 5.823, 8.945, 6.099)
      ..cubicTo(9.242, 6.089, 9.51, 6.131, 9.748, 6.224)
      ..cubicTo(9.98, 6.314, 10.168, 6.446, 10.313, 6.62)
      ..cubicTo(10.621, 6.991, 10.683, 7.451, 10.5, 8)
      ..cubicTo(10.406, 8.282, 10.261, 8.497, 10.065, 8.645)
      ..cubicTo(9.878, 8.786, 9.664, 8.852, 9.423, 8.843)
      ..cubicTo(9.182, 8.834, 8.943, 8.751, 8.706, 8.594)
      ..cubicTo(8.456, 8.429, 8.234, 8.197, 8.041, 7.899)
      ..cubicTo(7.867, 7.966, 7.687, 8, 7.5, 8)
      ..cubicTo(7.313, 8, 7.133, 7.966, 6.959, 7.899)
      ..cubicTo(6.766, 8.197, 6.544, 8.429, 6.294, 8.594)
      ..cubicTo(6.057, 8.751, 5.818, 8.834, 5.577, 8.843)
      ..cubicTo(5.336, 8.852, 5.122, 8.786, 4.935, 8.645)
      ..cubicTo(4.739, 8.497, 4.594, 8.282, 4.5, 8)
      ..cubicTo(4.317, 7.451, 4.379, 6.991, 4.687, 6.62)
      ..cubicTo(4.832, 6.446, 5.02, 6.314, 5.252, 6.224)
      ..cubicTo(5.49, 6.131, 5.758, 6.089, 6.055, 6.099)
      ..cubicTo(6.131, 5.823, 6.275, 5.588, 6.486, 5.395)
      ..cubicTo(6.317, 5.098, 6.218, 4.801, 6.189, 4.505)
      ..cubicTo(6.162, 4.225, 6.199, 3.969, 6.301, 3.739)
      ..close();
    canvas.drawPath(p, Paint()..color = color);
  }

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