# handbag icon

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

- Category: Shopping
- Use it for: handbag, purse, tote
- Tags: handbag, purse, bag, fashion, accessory, tote, clutch
- Component name: HandbagIcon
- Added: 2026-10-15

## Alternatives

- `shopping-bag`: shopping, purchases or the bag in a shop
- `briefcase`: work or business
- `wallet`: a wallet or a small coin purse holding money

## Not for

- shopping bag (use `shopping-bag`): a fashion item, not the shopping bag
- wallet (use `wallet`): a fashion bag or purse

## 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/handbag.svg · PNG https://gentleface.com/png/line-round/16/handbag.png · https://gentleface.com/png/line-round/32/handbag.png · https://gentleface.com/png/line-round/48/handbag.png
- line-soft: https://gentleface.com/svg/line-soft/16/handbag.svg · PNG https://gentleface.com/png/line-soft/16/handbag.png · https://gentleface.com/png/line-soft/32/handbag.png · https://gentleface.com/png/line-soft/48/handbag.png
- line-sharp: https://gentleface.com/svg/line-sharp/16/handbag.svg · PNG https://gentleface.com/png/line-sharp/16/handbag.png · https://gentleface.com/png/line-sharp/32/handbag.png · https://gentleface.com/png/line-sharp/48/handbag.png
- solid-round: https://gentleface.com/svg/solid-round/16/handbag.svg · PNG https://gentleface.com/png/solid-round/16/handbag.png · https://gentleface.com/png/solid-round/32/handbag.png · https://gentleface.com/png/solid-round/48/handbag.png
- solid-soft: https://gentleface.com/svg/solid-soft/16/handbag.svg · PNG https://gentleface.com/png/solid-soft/16/handbag.png · https://gentleface.com/png/solid-soft/32/handbag.png · https://gentleface.com/png/solid-soft/48/handbag.png
- solid-sharp: https://gentleface.com/svg/solid-sharp/16/handbag.svg · PNG https://gentleface.com/png/solid-sharp/16/handbag.png · https://gentleface.com/png/solid-sharp/32/handbag.png · https://gentleface.com/png/solid-sharp/48/handbag.png

The SVG of every style: https://gentleface.com/icons/handbag.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.897 8.5C11.089 8.668 11.244 8.87 11.362 9.106L12.862 12.106C13.006 12.393 13.076 12.698 13.073 13.02C13.069 13.391 12.97 13.735 12.774 14.051C12.579 14.368 12.316 14.61 11.985 14.78C11.699 14.927 11.395 15 11.073 15L3.927 15C3.605 15 3.301 14.927 3.015 14.78C2.684 14.61 2.421 14.368 2.226 14.051C2.03 13.735 1.931 13.391 1.927 13.02C1.924 12.698 1.994 12.393 2.138 12.106L3.638 9.106C3.756 8.87 3.911 8.668 4.103 8.5C4.036 8.419 4 8.318 4 8.214L4 6.5C4 6.055 4.082 5.625 4.246 5.212C4.424 4.762 4.683 4.367 5.025 4.025C5.367 3.683 5.762 3.424 6.212 3.246C6.625 3.082 7.055 3 7.5 3C7.945 3 8.375 3.082 8.788 3.246C9.238 3.424 9.633 3.683 9.975 4.025C10.317 4.367 10.576 4.762 10.754 5.212C10.918 5.625 11 6.055 11 6.5L11 8.214C11 8.318 10.964 8.419 10.897 8.5ZM9.824 5.58C9.697 5.259 9.512 4.976 9.268 4.732C9.024 4.488 8.741 4.303 8.42 4.176C8.125 4.059 7.818 4 7.5 4C7.182 4 6.875 4.059 6.58 4.176C6.259 4.303 5.976 4.488 5.732 4.732C5.488 4.976 5.303 5.259 5.176 5.58C5.059 5.875 5 6.182 5 6.5L5 8.045C5.138 8.015 5.28 8 5.427 8L9.573 8C9.72 8 9.862 8.015 10 8.045L10 6.5C10 6.182 9.941 5.875 9.824 5.58ZM2.927 13.01C2.929 13.196 2.979 13.368 3.076 13.526C3.174 13.684 3.306 13.805 3.471 13.89C3.614 13.963 3.766 14 3.927 14L11.073 14C11.234 14 11.386 13.963 11.529 13.89C11.694 13.805 11.826 13.684 11.924 13.526C12.021 13.368 12.071 13.196 12.073 13.01C12.074 12.849 12.039 12.697 11.967 12.553L10.467 9.553C10.383 9.383 10.26 9.249 10.099 9.149C9.938 9.05 9.762 9 9.573 9L5.427 9C5.238 9 5.062 9.05 4.901 9.149C4.74 9.249 4.617 9.383 4.533 9.553L3.033 12.553C2.961 12.697 2.926 12.849 2.927 13.01Z"/></svg>
```

### React

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

export function HandbagIcon(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.897 8.5C11.089 8.668 11.244 8.87 11.362 9.106L12.862 12.106C13.006 12.393 13.076 12.698 13.073 13.02C13.069 13.391 12.97 13.735 12.774 14.051C12.579 14.368 12.316 14.61 11.985 14.78C11.699 14.927 11.395 15 11.073 15L3.927 15C3.605 15 3.301 14.927 3.015 14.78C2.684 14.61 2.421 14.368 2.226 14.051C2.03 13.735 1.931 13.391 1.927 13.02C1.924 12.698 1.994 12.393 2.138 12.106L3.638 9.106C3.756 8.87 3.911 8.668 4.103 8.5C4.036 8.419 4 8.318 4 8.214L4 6.5C4 6.055 4.082 5.625 4.246 5.212C4.424 4.762 4.683 4.367 5.025 4.025C5.367 3.683 5.762 3.424 6.212 3.246C6.625 3.082 7.055 3 7.5 3C7.945 3 8.375 3.082 8.788 3.246C9.238 3.424 9.633 3.683 9.975 4.025C10.317 4.367 10.576 4.762 10.754 5.212C10.918 5.625 11 6.055 11 6.5L11 8.214C11 8.318 10.964 8.419 10.897 8.5ZM9.824 5.58C9.697 5.259 9.512 4.976 9.268 4.732C9.024 4.488 8.741 4.303 8.42 4.176C8.125 4.059 7.818 4 7.5 4C7.182 4 6.875 4.059 6.58 4.176C6.259 4.303 5.976 4.488 5.732 4.732C5.488 4.976 5.303 5.259 5.176 5.58C5.059 5.875 5 6.182 5 6.5L5 8.045C5.138 8.015 5.28 8 5.427 8L9.573 8C9.72 8 9.862 8.015 10 8.045L10 6.5C10 6.182 9.941 5.875 9.824 5.58ZM2.927 13.01C2.929 13.196 2.979 13.368 3.076 13.526C3.174 13.684 3.306 13.805 3.471 13.89C3.614 13.963 3.766 14 3.927 14L11.073 14C11.234 14 11.386 13.963 11.529 13.89C11.694 13.805 11.826 13.684 11.924 13.526C12.021 13.368 12.071 13.196 12.073 13.01C12.074 12.849 12.039 12.697 11.967 12.553L10.467 9.553C10.383 9.383 10.26 9.249 10.099 9.149C9.938 9.05 9.762 9 9.573 9L5.427 9C5.238 9 5.062 9.05 4.901 9.149C4.74 9.249 4.617 9.383 4.533 9.553L3.033 12.553C2.961 12.697 2.926 12.849 2.927 13.01Z" />
    </svg>
  );
}
```

### Vue

```vue
<!-- Gentleface "handbag" (line-round), MIT. https://gentleface.com/icons/handbag -->
<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.897 8.5C11.089 8.668 11.244 8.87 11.362 9.106L12.862 12.106C13.006 12.393 13.076 12.698 13.073 13.02C13.069 13.391 12.97 13.735 12.774 14.051C12.579 14.368 12.316 14.61 11.985 14.78C11.699 14.927 11.395 15 11.073 15L3.927 15C3.605 15 3.301 14.927 3.015 14.78C2.684 14.61 2.421 14.368 2.226 14.051C2.03 13.735 1.931 13.391 1.927 13.02C1.924 12.698 1.994 12.393 2.138 12.106L3.638 9.106C3.756 8.87 3.911 8.668 4.103 8.5C4.036 8.419 4 8.318 4 8.214L4 6.5C4 6.055 4.082 5.625 4.246 5.212C4.424 4.762 4.683 4.367 5.025 4.025C5.367 3.683 5.762 3.424 6.212 3.246C6.625 3.082 7.055 3 7.5 3C7.945 3 8.375 3.082 8.788 3.246C9.238 3.424 9.633 3.683 9.975 4.025C10.317 4.367 10.576 4.762 10.754 5.212C10.918 5.625 11 6.055 11 6.5L11 8.214C11 8.318 10.964 8.419 10.897 8.5ZM9.824 5.58C9.697 5.259 9.512 4.976 9.268 4.732C9.024 4.488 8.741 4.303 8.42 4.176C8.125 4.059 7.818 4 7.5 4C7.182 4 6.875 4.059 6.58 4.176C6.259 4.303 5.976 4.488 5.732 4.732C5.488 4.976 5.303 5.259 5.176 5.58C5.059 5.875 5 6.182 5 6.5L5 8.045C5.138 8.015 5.28 8 5.427 8L9.573 8C9.72 8 9.862 8.015 10 8.045L10 6.5C10 6.182 9.941 5.875 9.824 5.58ZM2.927 13.01C2.929 13.196 2.979 13.368 3.076 13.526C3.174 13.684 3.306 13.805 3.471 13.89C3.614 13.963 3.766 14 3.927 14L11.073 14C11.234 14 11.386 13.963 11.529 13.89C11.694 13.805 11.826 13.684 11.924 13.526C12.021 13.368 12.071 13.196 12.073 13.01C12.074 12.849 12.039 12.697 11.967 12.553L10.467 9.553C10.383 9.383 10.26 9.249 10.099 9.149C9.938 9.05 9.762 9 9.573 9L5.427 9C5.238 9 5.062 9.05 4.901 9.149C4.74 9.249 4.617 9.383 4.533 9.553L3.033 12.553C2.961 12.697 2.926 12.849 2.927 13.01Z" />
  </svg>
</template>
```

### Svelte

```svelte
<!-- Gentleface "handbag" (line-round), MIT. https://gentleface.com/icons/handbag -->
<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.897 8.5C11.089 8.668 11.244 8.87 11.362 9.106L12.862 12.106C13.006 12.393 13.076 12.698 13.073 13.02C13.069 13.391 12.97 13.735 12.774 14.051C12.579 14.368 12.316 14.61 11.985 14.78C11.699 14.927 11.395 15 11.073 15L3.927 15C3.605 15 3.301 14.927 3.015 14.78C2.684 14.61 2.421 14.368 2.226 14.051C2.03 13.735 1.931 13.391 1.927 13.02C1.924 12.698 1.994 12.393 2.138 12.106L3.638 9.106C3.756 8.87 3.911 8.668 4.103 8.5C4.036 8.419 4 8.318 4 8.214L4 6.5C4 6.055 4.082 5.625 4.246 5.212C4.424 4.762 4.683 4.367 5.025 4.025C5.367 3.683 5.762 3.424 6.212 3.246C6.625 3.082 7.055 3 7.5 3C7.945 3 8.375 3.082 8.788 3.246C9.238 3.424 9.633 3.683 9.975 4.025C10.317 4.367 10.576 4.762 10.754 5.212C10.918 5.625 11 6.055 11 6.5L11 8.214C11 8.318 10.964 8.419 10.897 8.5ZM9.824 5.58C9.697 5.259 9.512 4.976 9.268 4.732C9.024 4.488 8.741 4.303 8.42 4.176C8.125 4.059 7.818 4 7.5 4C7.182 4 6.875 4.059 6.58 4.176C6.259 4.303 5.976 4.488 5.732 4.732C5.488 4.976 5.303 5.259 5.176 5.58C5.059 5.875 5 6.182 5 6.5L5 8.045C5.138 8.015 5.28 8 5.427 8L9.573 8C9.72 8 9.862 8.015 10 8.045L10 6.5C10 6.182 9.941 5.875 9.824 5.58ZM2.927 13.01C2.929 13.196 2.979 13.368 3.076 13.526C3.174 13.684 3.306 13.805 3.471 13.89C3.614 13.963 3.766 14 3.927 14L11.073 14C11.234 14 11.386 13.963 11.529 13.89C11.694 13.805 11.826 13.684 11.924 13.526C12.021 13.368 12.071 13.196 12.073 13.01C12.074 12.849 12.039 12.697 11.967 12.553L10.467 9.553C10.383 9.383 10.26 9.249 10.099 9.149C9.938 9.05 9.762 9 9.573 9L5.427 9C5.238 9 5.062 9.05 4.901 9.149C4.74 9.249 4.617 9.383 4.533 9.553L3.033 12.553C2.961 12.697 2.926 12.849 2.927 13.01Z" />
</svg>
```

### HTML img

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

### CSS

```css
/* Gentleface "handbag" (line-round), MIT. https://gentleface.com/icons/handbag. Takes the text color. */
.icon-handbag {
  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.897 8.5C11.089 8.668 11.244 8.87 11.362 9.106L12.862 12.106C13.006 12.393 13.076 12.698 13.073 13.02C13.069 13.391 12.97 13.735 12.774 14.051C12.579 14.368 12.316 14.61 11.985 14.78C11.699 14.927 11.395 15 11.073 15L3.927 15C3.605 15 3.301 14.927 3.015 14.78C2.684 14.61 2.421 14.368 2.226 14.051C2.03 13.735 1.931 13.391 1.927 13.02C1.924 12.698 1.994 12.393 2.138 12.106L3.638 9.106C3.756 8.87 3.911 8.668 4.103 8.5C4.036 8.419 4 8.318 4 8.214L4 6.5C4 6.055 4.082 5.625 4.246 5.212C4.424 4.762 4.683 4.367 5.025 4.025C5.367 3.683 5.762 3.424 6.212 3.246C6.625 3.082 7.055 3 7.5 3C7.945 3 8.375 3.082 8.788 3.246C9.238 3.424 9.633 3.683 9.975 4.025C10.317 4.367 10.576 4.762 10.754 5.212C10.918 5.625 11 6.055 11 6.5L11 8.214C11 8.318 10.964 8.419 10.897 8.5ZM9.824 5.58C9.697 5.259 9.512 4.976 9.268 4.732C9.024 4.488 8.741 4.303 8.42 4.176C8.125 4.059 7.818 4 7.5 4C7.182 4 6.875 4.059 6.58 4.176C6.259 4.303 5.976 4.488 5.732 4.732C5.488 4.976 5.303 5.259 5.176 5.58C5.059 5.875 5 6.182 5 6.5L5 8.045C5.138 8.015 5.28 8 5.427 8L9.573 8C9.72 8 9.862 8.015 10 8.045L10 6.5C10 6.182 9.941 5.875 9.824 5.58ZM2.927 13.01C2.929 13.196 2.979 13.368 3.076 13.526C3.174 13.684 3.306 13.805 3.471 13.89C3.614 13.963 3.766 14 3.927 14L11.073 14C11.234 14 11.386 13.963 11.529 13.89C11.694 13.805 11.826 13.684 11.924 13.526C12.021 13.368 12.071 13.196 12.073 13.01C12.074 12.849 12.039 12.697 11.967 12.553L10.467 9.553C10.383 9.383 10.26 9.249 10.099 9.149C9.938 9.05 9.762 9 9.573 9L5.427 9C5.238 9 5.062 9.05 4.901 9.149C4.74 9.249 4.617 9.383 4.533 9.553L3.033 12.553C2.961 12.697 2.926 12.849 2.927 13.01Z'/%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.897 8.5C11.089 8.668 11.244 8.87 11.362 9.106L12.862 12.106C13.006 12.393 13.076 12.698 13.073 13.02C13.069 13.391 12.97 13.735 12.774 14.051C12.579 14.368 12.316 14.61 11.985 14.78C11.699 14.927 11.395 15 11.073 15L3.927 15C3.605 15 3.301 14.927 3.015 14.78C2.684 14.61 2.421 14.368 2.226 14.051C2.03 13.735 1.931 13.391 1.927 13.02C1.924 12.698 1.994 12.393 2.138 12.106L3.638 9.106C3.756 8.87 3.911 8.668 4.103 8.5C4.036 8.419 4 8.318 4 8.214L4 6.5C4 6.055 4.082 5.625 4.246 5.212C4.424 4.762 4.683 4.367 5.025 4.025C5.367 3.683 5.762 3.424 6.212 3.246C6.625 3.082 7.055 3 7.5 3C7.945 3 8.375 3.082 8.788 3.246C9.238 3.424 9.633 3.683 9.975 4.025C10.317 4.367 10.576 4.762 10.754 5.212C10.918 5.625 11 6.055 11 6.5L11 8.214C11 8.318 10.964 8.419 10.897 8.5ZM9.824 5.58C9.697 5.259 9.512 4.976 9.268 4.732C9.024 4.488 8.741 4.303 8.42 4.176C8.125 4.059 7.818 4 7.5 4C7.182 4 6.875 4.059 6.58 4.176C6.259 4.303 5.976 4.488 5.732 4.732C5.488 4.976 5.303 5.259 5.176 5.58C5.059 5.875 5 6.182 5 6.5L5 8.045C5.138 8.015 5.28 8 5.427 8L9.573 8C9.72 8 9.862 8.015 10 8.045L10 6.5C10 6.182 9.941 5.875 9.824 5.58ZM2.927 13.01C2.929 13.196 2.979 13.368 3.076 13.526C3.174 13.684 3.306 13.805 3.471 13.89C3.614 13.963 3.766 14 3.927 14L11.073 14C11.234 14 11.386 13.963 11.529 13.89C11.694 13.805 11.826 13.684 11.924 13.526C12.021 13.368 12.071 13.196 12.073 13.01C12.074 12.849 12.039 12.697 11.967 12.553L10.467 9.553C10.383 9.383 10.26 9.249 10.099 9.149C9.938 9.05 9.762 9 9.573 9L5.427 9C5.238 9 5.062 9.05 4.901 9.149C4.74 9.249 4.617 9.383 4.533 9.553L3.033 12.553C2.961 12.697 2.926 12.849 2.927 13.01Z'/%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.897 8.5C11.089 8.668 11.244 8.87 11.362 9.106L12.862 12.106C13.006 12.393 13.076 12.698 13.073 13.02C13.069 13.391 12.97 13.735 12.774 14.051C12.579 14.368 12.316 14.61 11.985 14.78C11.699 14.927 11.395 15 11.073 15L3.927 15C3.605 15 3.301 14.927 3.015 14.78C2.684 14.61 2.421 14.368 2.226 14.051C2.03 13.735 1.931 13.391 1.927 13.02C1.924 12.698 1.994 12.393 2.138 12.106L3.638 9.106C3.756 8.87 3.911 8.668 4.103 8.5C4.036 8.419 4 8.318 4 8.214L4 6.5C4 6.055 4.082 5.625 4.246 5.212C4.424 4.762 4.683 4.367 5.025 4.025C5.367 3.683 5.762 3.424 6.212 3.246C6.625 3.082 7.055 3 7.5 3C7.945 3 8.375 3.082 8.788 3.246C9.238 3.424 9.633 3.683 9.975 4.025C10.317 4.367 10.576 4.762 10.754 5.212C10.918 5.625 11 6.055 11 6.5L11 8.214C11 8.318 10.964 8.419 10.897 8.5ZM9.824 5.58C9.697 5.259 9.512 4.976 9.268 4.732C9.024 4.488 8.741 4.303 8.42 4.176C8.125 4.059 7.818 4 7.5 4C7.182 4 6.875 4.059 6.58 4.176C6.259 4.303 5.976 4.488 5.732 4.732C5.488 4.976 5.303 5.259 5.176 5.58C5.059 5.875 5 6.182 5 6.5L5 8.045C5.138 8.015 5.28 8 5.427 8L9.573 8C9.72 8 9.862 8.015 10 8.045L10 6.5C10 6.182 9.941 5.875 9.824 5.58ZM2.927 13.01C2.929 13.196 2.979 13.368 3.076 13.526C3.174 13.684 3.306 13.805 3.471 13.89C3.614 13.963 3.766 14 3.927 14L11.073 14C11.234 14 11.386 13.963 11.529 13.89C11.694 13.805 11.826 13.684 11.924 13.526C12.021 13.368 12.071 13.196 12.073 13.01C12.074 12.849 12.039 12.697 11.967 12.553L10.467 9.553C10.383 9.383 10.26 9.249 10.099 9.149C9.938 9.05 9.762 9 9.573 9L5.427 9C5.238 9 5.062 9.05 4.901 9.149C4.74 9.249 4.617 9.383 4.533 9.553L3.033 12.553C2.961 12.697 2.926 12.849 2.927 13.01Z'/%3E%3C/svg%3E
```

### Sprite

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

### SwiftUI

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

struct HandbagIcon: Shape {
    func path(in rect: CGRect) -> Path {
        var p = Path()
        p.move(to: CGPoint(x: 10.897, y: 8.5))
        p.addCurve(to: CGPoint(x: 11.362, y: 9.106), control1: CGPoint(x: 11.089, y: 8.668), control2: CGPoint(x: 11.244, y: 8.87))
        p.addLine(to: CGPoint(x: 12.862, y: 12.106))
        p.addCurve(to: CGPoint(x: 13.073, y: 13.02), control1: CGPoint(x: 13.006, y: 12.393), control2: CGPoint(x: 13.076, y: 12.698))
        p.addCurve(to: CGPoint(x: 12.774, y: 14.051), control1: CGPoint(x: 13.069, y: 13.391), control2: CGPoint(x: 12.97, y: 13.735))
        p.addCurve(to: CGPoint(x: 11.985, y: 14.78), control1: CGPoint(x: 12.579, y: 14.368), control2: CGPoint(x: 12.316, y: 14.61))
        p.addCurve(to: CGPoint(x: 11.073, y: 15), control1: CGPoint(x: 11.699, y: 14.927), control2: CGPoint(x: 11.395, y: 15))
        p.addLine(to: CGPoint(x: 3.927, y: 15))
        p.addCurve(to: CGPoint(x: 3.015, y: 14.78), control1: CGPoint(x: 3.605, y: 15), control2: CGPoint(x: 3.301, y: 14.927))
        p.addCurve(to: CGPoint(x: 2.226, y: 14.051), control1: CGPoint(x: 2.684, y: 14.61), control2: CGPoint(x: 2.421, y: 14.368))
        p.addCurve(to: CGPoint(x: 1.927, y: 13.02), control1: CGPoint(x: 2.03, y: 13.735), control2: CGPoint(x: 1.931, y: 13.391))
        p.addCurve(to: CGPoint(x: 2.138, y: 12.106), control1: CGPoint(x: 1.924, y: 12.698), control2: CGPoint(x: 1.994, y: 12.393))
        p.addLine(to: CGPoint(x: 3.638, y: 9.106))
        p.addCurve(to: CGPoint(x: 4.103, y: 8.5), control1: CGPoint(x: 3.756, y: 8.87), control2: CGPoint(x: 3.911, y: 8.668))
        p.addCurve(to: CGPoint(x: 4, y: 8.214), control1: CGPoint(x: 4.036, y: 8.419), control2: CGPoint(x: 4, y: 8.318))
        p.addLine(to: CGPoint(x: 4, y: 6.5))
        p.addCurve(to: CGPoint(x: 4.246, y: 5.212), control1: CGPoint(x: 4, y: 6.055), control2: CGPoint(x: 4.082, y: 5.625))
        p.addCurve(to: CGPoint(x: 5.025, y: 4.025), control1: CGPoint(x: 4.424, y: 4.762), control2: CGPoint(x: 4.683, y: 4.367))
        p.addCurve(to: CGPoint(x: 6.212, y: 3.246), control1: CGPoint(x: 5.367, y: 3.683), control2: CGPoint(x: 5.762, y: 3.424))
        p.addCurve(to: CGPoint(x: 7.5, y: 3), control1: CGPoint(x: 6.625, y: 3.082), control2: CGPoint(x: 7.055, y: 3))
        p.addCurve(to: CGPoint(x: 8.788, y: 3.246), control1: CGPoint(x: 7.945, y: 3), control2: CGPoint(x: 8.375, y: 3.082))
        p.addCurve(to: CGPoint(x: 9.975, y: 4.025), control1: CGPoint(x: 9.238, y: 3.424), control2: CGPoint(x: 9.633, y: 3.683))
        p.addCurve(to: CGPoint(x: 10.754, y: 5.212), control1: CGPoint(x: 10.317, y: 4.367), control2: CGPoint(x: 10.576, y: 4.762))
        p.addCurve(to: CGPoint(x: 11, y: 6.5), control1: CGPoint(x: 10.918, y: 5.625), control2: CGPoint(x: 11, y: 6.055))
        p.addLine(to: CGPoint(x: 11, y: 8.214))
        p.addCurve(to: CGPoint(x: 10.897, y: 8.5), control1: CGPoint(x: 11, y: 8.318), control2: CGPoint(x: 10.964, y: 8.419))
        p.closeSubpath()
        p.move(to: CGPoint(x: 9.824, y: 5.58))
        p.addCurve(to: CGPoint(x: 9.268, y: 4.732), control1: CGPoint(x: 9.697, y: 5.259), control2: CGPoint(x: 9.512, y: 4.976))
        p.addCurve(to: CGPoint(x: 8.42, y: 4.176), control1: CGPoint(x: 9.024, y: 4.488), control2: CGPoint(x: 8.741, y: 4.303))
        p.addCurve(to: CGPoint(x: 7.5, y: 4), control1: CGPoint(x: 8.125, y: 4.059), control2: CGPoint(x: 7.818, y: 4))
        p.addCurve(to: CGPoint(x: 6.58, y: 4.176), control1: CGPoint(x: 7.182, y: 4), control2: CGPoint(x: 6.875, y: 4.059))
        p.addCurve(to: CGPoint(x: 5.732, y: 4.732), control1: CGPoint(x: 6.259, y: 4.303), control2: CGPoint(x: 5.976, y: 4.488))
        p.addCurve(to: CGPoint(x: 5.176, y: 5.58), control1: CGPoint(x: 5.488, y: 4.976), control2: CGPoint(x: 5.303, y: 5.259))
        p.addCurve(to: CGPoint(x: 5, y: 6.5), control1: CGPoint(x: 5.059, y: 5.875), control2: CGPoint(x: 5, y: 6.182))
        p.addLine(to: CGPoint(x: 5, y: 8.045))
        p.addCurve(to: CGPoint(x: 5.427, y: 8), control1: CGPoint(x: 5.138, y: 8.015), control2: CGPoint(x: 5.28, y: 8))
        p.addLine(to: CGPoint(x: 9.573, y: 8))
        p.addCurve(to: CGPoint(x: 10, y: 8.045), control1: CGPoint(x: 9.72, y: 8), control2: CGPoint(x: 9.862, y: 8.015))
        p.addLine(to: CGPoint(x: 10, y: 6.5))
        p.addCurve(to: CGPoint(x: 9.824, y: 5.58), control1: CGPoint(x: 10, y: 6.182), control2: CGPoint(x: 9.941, y: 5.875))
        p.closeSubpath()
        p.move(to: CGPoint(x: 2.927, y: 13.01))
        p.addCurve(to: CGPoint(x: 3.076, y: 13.526), control1: CGPoint(x: 2.929, y: 13.196), control2: CGPoint(x: 2.979, y: 13.368))
        p.addCurve(to: CGPoint(x: 3.471, y: 13.89), control1: CGPoint(x: 3.174, y: 13.684), control2: CGPoint(x: 3.306, y: 13.805))
        p.addCurve(to: CGPoint(x: 3.927, y: 14), control1: CGPoint(x: 3.614, y: 13.963), control2: CGPoint(x: 3.766, y: 14))
        p.addLine(to: CGPoint(x: 11.073, y: 14))
        p.addCurve(to: CGPoint(x: 11.529, y: 13.89), control1: CGPoint(x: 11.234, y: 14), control2: CGPoint(x: 11.386, y: 13.963))
        p.addCurve(to: CGPoint(x: 11.924, y: 13.526), control1: CGPoint(x: 11.694, y: 13.805), control2: CGPoint(x: 11.826, y: 13.684))
        p.addCurve(to: CGPoint(x: 12.073, y: 13.01), control1: CGPoint(x: 12.021, y: 13.368), control2: CGPoint(x: 12.071, y: 13.196))
        p.addCurve(to: CGPoint(x: 11.967, y: 12.553), control1: CGPoint(x: 12.074, y: 12.849), control2: CGPoint(x: 12.039, y: 12.697))
        p.addLine(to: CGPoint(x: 10.467, y: 9.553))
        p.addCurve(to: CGPoint(x: 10.099, y: 9.149), control1: CGPoint(x: 10.383, y: 9.383), control2: CGPoint(x: 10.26, y: 9.249))
        p.addCurve(to: CGPoint(x: 9.573, y: 9), control1: CGPoint(x: 9.938, y: 9.05), control2: CGPoint(x: 9.762, y: 9))
        p.addLine(to: CGPoint(x: 5.427, y: 9))
        p.addCurve(to: CGPoint(x: 4.901, y: 9.149), control1: CGPoint(x: 5.238, y: 9), control2: CGPoint(x: 5.062, y: 9.05))
        p.addCurve(to: CGPoint(x: 4.533, y: 9.553), control1: CGPoint(x: 4.74, y: 9.249), control2: CGPoint(x: 4.617, y: 9.383))
        p.addLine(to: CGPoint(x: 3.033, y: 12.553))
        p.addCurve(to: CGPoint(x: 2.927, y: 13.01), control1: CGPoint(x: 2.961, y: 12.697), control2: CGPoint(x: 2.926, y: 12.849))
        p.closeSubpath()
        return p.applying(CGAffineTransform(scaleX: rect.width / 16, y: rect.height / 16))
    }
}

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

### Compose

```kotlin
// Gentleface "handbag" (line-round), MIT. https://gentleface.com/icons/handbag
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 HandbagIcon: ImageVector by lazy {
    ImageVector.Builder(
        name = "handbag", defaultWidth = 16.dp, defaultHeight = 16.dp,
        viewportWidth = 16f, viewportHeight = 16f,
    ).addPath(
        pathData = addPathNodes("M10.897 8.5C11.089 8.668 11.244 8.87 11.362 9.106L12.862 12.106C13.006 12.393 13.076 12.698 13.073 13.02C13.069 13.391 12.97 13.735 12.774 14.051C12.579 14.368 12.316 14.61 11.985 14.78C11.699 14.927 11.395 15 11.073 15L3.927 15C3.605 15 3.301 14.927 3.015 14.78C2.684 14.61 2.421 14.368 2.226 14.051C2.03 13.735 1.931 13.391 1.927 13.02C1.924 12.698 1.994 12.393 2.138 12.106L3.638 9.106C3.756 8.87 3.911 8.668 4.103 8.5C4.036 8.419 4 8.318 4 8.214L4 6.5C4 6.055 4.082 5.625 4.246 5.212C4.424 4.762 4.683 4.367 5.025 4.025C5.367 3.683 5.762 3.424 6.212 3.246C6.625 3.082 7.055 3 7.5 3C7.945 3 8.375 3.082 8.788 3.246C9.238 3.424 9.633 3.683 9.975 4.025C10.317 4.367 10.576 4.762 10.754 5.212C10.918 5.625 11 6.055 11 6.5L11 8.214C11 8.318 10.964 8.419 10.897 8.5ZM9.824 5.58C9.697 5.259 9.512 4.976 9.268 4.732C9.024 4.488 8.741 4.303 8.42 4.176C8.125 4.059 7.818 4 7.5 4C7.182 4 6.875 4.059 6.58 4.176C6.259 4.303 5.976 4.488 5.732 4.732C5.488 4.976 5.303 5.259 5.176 5.58C5.059 5.875 5 6.182 5 6.5L5 8.045C5.138 8.015 5.28 8 5.427 8L9.573 8C9.72 8 9.862 8.015 10 8.045L10 6.5C10 6.182 9.941 5.875 9.824 5.58ZM2.927 13.01C2.929 13.196 2.979 13.368 3.076 13.526C3.174 13.684 3.306 13.805 3.471 13.89C3.614 13.963 3.766 14 3.927 14L11.073 14C11.234 14 11.386 13.963 11.529 13.89C11.694 13.805 11.826 13.684 11.924 13.526C12.021 13.368 12.071 13.196 12.073 13.01C12.074 12.849 12.039 12.697 11.967 12.553L10.467 9.553C10.383 9.383 10.26 9.249 10.099 9.149C9.938 9.05 9.762 9 9.573 9L5.427 9C5.238 9 5.062 9.05 4.901 9.149C4.74 9.249 4.617 9.383 4.533 9.553L3.033 12.553C2.961 12.697 2.926 12.849 2.927 13.01Z"),
        fill = SolidColor(Color.Black),
    ).build()
}

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

### Android XML

```xml
<!-- res/drawable/ic_handbag.xml · Gentleface "handbag" (line-round), MIT. https://gentleface.com/icons/handbag -->
<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.897 8.5C11.089 8.668 11.244 8.87 11.362 9.106L12.862 12.106C13.006 12.393 13.076 12.698 13.073 13.02C13.069 13.391 12.97 13.735 12.774 14.051C12.579 14.368 12.316 14.61 11.985 14.78C11.699 14.927 11.395 15 11.073 15L3.927 15C3.605 15 3.301 14.927 3.015 14.78C2.684 14.61 2.421 14.368 2.226 14.051C2.03 13.735 1.931 13.391 1.927 13.02C1.924 12.698 1.994 12.393 2.138 12.106L3.638 9.106C3.756 8.87 3.911 8.668 4.103 8.5C4.036 8.419 4 8.318 4 8.214L4 6.5C4 6.055 4.082 5.625 4.246 5.212C4.424 4.762 4.683 4.367 5.025 4.025C5.367 3.683 5.762 3.424 6.212 3.246C6.625 3.082 7.055 3 7.5 3C7.945 3 8.375 3.082 8.788 3.246C9.238 3.424 9.633 3.683 9.975 4.025C10.317 4.367 10.576 4.762 10.754 5.212C10.918 5.625 11 6.055 11 6.5L11 8.214C11 8.318 10.964 8.419 10.897 8.5ZM9.824 5.58C9.697 5.259 9.512 4.976 9.268 4.732C9.024 4.488 8.741 4.303 8.42 4.176C8.125 4.059 7.818 4 7.5 4C7.182 4 6.875 4.059 6.58 4.176C6.259 4.303 5.976 4.488 5.732 4.732C5.488 4.976 5.303 5.259 5.176 5.58C5.059 5.875 5 6.182 5 6.5L5 8.045C5.138 8.015 5.28 8 5.427 8L9.573 8C9.72 8 9.862 8.015 10 8.045L10 6.5C10 6.182 9.941 5.875 9.824 5.58ZM2.927 13.01C2.929 13.196 2.979 13.368 3.076 13.526C3.174 13.684 3.306 13.805 3.471 13.89C3.614 13.963 3.766 14 3.927 14L11.073 14C11.234 14 11.386 13.963 11.529 13.89C11.694 13.805 11.826 13.684 11.924 13.526C12.021 13.368 12.071 13.196 12.073 13.01C12.074 12.849 12.039 12.697 11.967 12.553L10.467 9.553C10.383 9.383 10.26 9.249 10.099 9.149C9.938 9.05 9.762 9 9.573 9L5.427 9C5.238 9 5.062 9.05 4.901 9.149C4.74 9.249 4.617 9.383 4.533 9.553L3.033 12.553C2.961 12.697 2.926 12.849 2.927 13.01Z"/>
</vector>
```

### Flutter

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

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

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

class _HandbagIconPainter extends CustomPainter {
  _HandbagIconPainter(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.897, 8.5)
      ..cubicTo(11.089, 8.668, 11.244, 8.87, 11.362, 9.106)
      ..lineTo(12.862, 12.106)
      ..cubicTo(13.006, 12.393, 13.076, 12.698, 13.073, 13.02)
      ..cubicTo(13.069, 13.391, 12.97, 13.735, 12.774, 14.051)
      ..cubicTo(12.579, 14.368, 12.316, 14.61, 11.985, 14.78)
      ..cubicTo(11.699, 14.927, 11.395, 15, 11.073, 15)
      ..lineTo(3.927, 15)
      ..cubicTo(3.605, 15, 3.301, 14.927, 3.015, 14.78)
      ..cubicTo(2.684, 14.61, 2.421, 14.368, 2.226, 14.051)
      ..cubicTo(2.03, 13.735, 1.931, 13.391, 1.927, 13.02)
      ..cubicTo(1.924, 12.698, 1.994, 12.393, 2.138, 12.106)
      ..lineTo(3.638, 9.106)
      ..cubicTo(3.756, 8.87, 3.911, 8.668, 4.103, 8.5)
      ..cubicTo(4.036, 8.419, 4, 8.318, 4, 8.214)
      ..lineTo(4, 6.5)
      ..cubicTo(4, 6.055, 4.082, 5.625, 4.246, 5.212)
      ..cubicTo(4.424, 4.762, 4.683, 4.367, 5.025, 4.025)
      ..cubicTo(5.367, 3.683, 5.762, 3.424, 6.212, 3.246)
      ..cubicTo(6.625, 3.082, 7.055, 3, 7.5, 3)
      ..cubicTo(7.945, 3, 8.375, 3.082, 8.788, 3.246)
      ..cubicTo(9.238, 3.424, 9.633, 3.683, 9.975, 4.025)
      ..cubicTo(10.317, 4.367, 10.576, 4.762, 10.754, 5.212)
      ..cubicTo(10.918, 5.625, 11, 6.055, 11, 6.5)
      ..lineTo(11, 8.214)
      ..cubicTo(11, 8.318, 10.964, 8.419, 10.897, 8.5)
      ..close()
      ..moveTo(9.824, 5.58)
      ..cubicTo(9.697, 5.259, 9.512, 4.976, 9.268, 4.732)
      ..cubicTo(9.024, 4.488, 8.741, 4.303, 8.42, 4.176)
      ..cubicTo(8.125, 4.059, 7.818, 4, 7.5, 4)
      ..cubicTo(7.182, 4, 6.875, 4.059, 6.58, 4.176)
      ..cubicTo(6.259, 4.303, 5.976, 4.488, 5.732, 4.732)
      ..cubicTo(5.488, 4.976, 5.303, 5.259, 5.176, 5.58)
      ..cubicTo(5.059, 5.875, 5, 6.182, 5, 6.5)
      ..lineTo(5, 8.045)
      ..cubicTo(5.138, 8.015, 5.28, 8, 5.427, 8)
      ..lineTo(9.573, 8)
      ..cubicTo(9.72, 8, 9.862, 8.015, 10, 8.045)
      ..lineTo(10, 6.5)
      ..cubicTo(10, 6.182, 9.941, 5.875, 9.824, 5.58)
      ..close()
      ..moveTo(2.927, 13.01)
      ..cubicTo(2.929, 13.196, 2.979, 13.368, 3.076, 13.526)
      ..cubicTo(3.174, 13.684, 3.306, 13.805, 3.471, 13.89)
      ..cubicTo(3.614, 13.963, 3.766, 14, 3.927, 14)
      ..lineTo(11.073, 14)
      ..cubicTo(11.234, 14, 11.386, 13.963, 11.529, 13.89)
      ..cubicTo(11.694, 13.805, 11.826, 13.684, 11.924, 13.526)
      ..cubicTo(12.021, 13.368, 12.071, 13.196, 12.073, 13.01)
      ..cubicTo(12.074, 12.849, 12.039, 12.697, 11.967, 12.553)
      ..lineTo(10.467, 9.553)
      ..cubicTo(10.383, 9.383, 10.26, 9.249, 10.099, 9.149)
      ..cubicTo(9.938, 9.05, 9.762, 9, 9.573, 9)
      ..lineTo(5.427, 9)
      ..cubicTo(5.238, 9, 5.062, 9.05, 4.901, 9.149)
      ..cubicTo(4.74, 9.249, 4.617, 9.383, 4.533, 9.553)
      ..lineTo(3.033, 12.553)
      ..cubicTo(2.961, 12.697, 2.926, 12.849, 2.927, 13.01)
      ..close();
    canvas.drawPath(p, Paint()..color = color);
  }

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