# panorama icon

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

- Category: Photo & image
- Use it for: panorama, wide photo, panoramic, pano
- Tags: panorama, wide, photo, landscape, image, 360, view
- Component name: PanoramaIcon
- Added: 2026-10-16

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

The SVG of every style: https://gentleface.com/icons/panorama.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="M14.5 14.013C14.397 14.013 14.303 13.984 14.217 13.926C13.323 13.313 12.36 12.843 11.327 12.515C10.245 12.172 9.136 12 8 12C6.864 12 5.755 12.172 4.673 12.515C3.64 12.843 2.677 13.313 1.783 13.926C1.669 14.004 1.544 14.03 1.408 14.005C1.272 13.979 1.166 13.91 1.088 13.796C1.029 13.711 1 13.616 1 13.513L1 2.487C1 2.346 1.048 2.227 1.144 2.131C1.241 2.035 1.359 1.987 1.5 1.987C1.603 1.987 1.697 2.016 1.783 2.074C2.677 2.687 3.64 3.157 4.673 3.485C5.755 3.828 6.864 4 8 4C9.136 4 10.245 3.828 11.327 3.485C12.36 3.157 13.323 2.687 14.217 2.074C14.334 1.995 14.459 1.967 14.592 1.992C14.726 2.017 14.833 2.088 14.912 2.204C14.971 2.289 15 2.384 15 2.487L15 13.513C15 13.654 14.952 13.773 14.856 13.869C14.759 13.965 14.641 14.013 14.5 14.013ZM9.85 11.143C10.45 11.236 11.043 11.376 11.63 11.562C12.461 11.826 13.251 12.174 14 12.607L14 3.393C13.251 3.826 12.461 4.174 11.63 4.438C10.449 4.813 9.239 5 8 5C6.761 5 5.551 4.813 4.37 4.438C3.539 4.174 2.749 3.826 2 3.393L2 10.293L4.086 8.207C4.266 8.027 4.472 7.887 4.706 7.786C4.959 7.676 5.224 7.621 5.5 7.621C5.776 7.621 6.041 7.676 6.294 7.786C6.528 7.887 6.734 8.027 6.914 8.207L9.85 11.143ZM10.293 6.293C10.488 6.098 10.724 6 11 6C11.276 6 11.512 6.098 11.707 6.293C11.902 6.488 12 6.724 12 7C12 7.276 11.902 7.512 11.707 7.707C11.512 7.902 11.276 8 11 8C10.724 8 10.488 7.902 10.293 7.707C10.098 7.512 10 7.276 10 7C10 6.724 10.098 6.488 10.293 6.293ZM6.207 8.914C6.012 8.719 5.776 8.621 5.5 8.621C5.224 8.621 4.988 8.719 4.793 8.914L2 11.707L2 12.607C2.749 12.174 3.539 11.826 4.37 11.562C5.551 11.187 6.761 11 8 11C8.099 11 8.198 11.001 8.296 11.004L6.207 8.914Z"/></svg>
```

### React

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

export function PanoramaIcon(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="M14.5 14.013C14.397 14.013 14.303 13.984 14.217 13.926C13.323 13.313 12.36 12.843 11.327 12.515C10.245 12.172 9.136 12 8 12C6.864 12 5.755 12.172 4.673 12.515C3.64 12.843 2.677 13.313 1.783 13.926C1.669 14.004 1.544 14.03 1.408 14.005C1.272 13.979 1.166 13.91 1.088 13.796C1.029 13.711 1 13.616 1 13.513L1 2.487C1 2.346 1.048 2.227 1.144 2.131C1.241 2.035 1.359 1.987 1.5 1.987C1.603 1.987 1.697 2.016 1.783 2.074C2.677 2.687 3.64 3.157 4.673 3.485C5.755 3.828 6.864 4 8 4C9.136 4 10.245 3.828 11.327 3.485C12.36 3.157 13.323 2.687 14.217 2.074C14.334 1.995 14.459 1.967 14.592 1.992C14.726 2.017 14.833 2.088 14.912 2.204C14.971 2.289 15 2.384 15 2.487L15 13.513C15 13.654 14.952 13.773 14.856 13.869C14.759 13.965 14.641 14.013 14.5 14.013ZM9.85 11.143C10.45 11.236 11.043 11.376 11.63 11.562C12.461 11.826 13.251 12.174 14 12.607L14 3.393C13.251 3.826 12.461 4.174 11.63 4.438C10.449 4.813 9.239 5 8 5C6.761 5 5.551 4.813 4.37 4.438C3.539 4.174 2.749 3.826 2 3.393L2 10.293L4.086 8.207C4.266 8.027 4.472 7.887 4.706 7.786C4.959 7.676 5.224 7.621 5.5 7.621C5.776 7.621 6.041 7.676 6.294 7.786C6.528 7.887 6.734 8.027 6.914 8.207L9.85 11.143ZM10.293 6.293C10.488 6.098 10.724 6 11 6C11.276 6 11.512 6.098 11.707 6.293C11.902 6.488 12 6.724 12 7C12 7.276 11.902 7.512 11.707 7.707C11.512 7.902 11.276 8 11 8C10.724 8 10.488 7.902 10.293 7.707C10.098 7.512 10 7.276 10 7C10 6.724 10.098 6.488 10.293 6.293ZM6.207 8.914C6.012 8.719 5.776 8.621 5.5 8.621C5.224 8.621 4.988 8.719 4.793 8.914L2 11.707L2 12.607C2.749 12.174 3.539 11.826 4.37 11.562C5.551 11.187 6.761 11 8 11C8.099 11 8.198 11.001 8.296 11.004L6.207 8.914Z" />
    </svg>
  );
}
```

### Vue

```vue
<!-- Gentleface "panorama" (line-round), MIT. https://gentleface.com/icons/panorama -->
<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="M14.5 14.013C14.397 14.013 14.303 13.984 14.217 13.926C13.323 13.313 12.36 12.843 11.327 12.515C10.245 12.172 9.136 12 8 12C6.864 12 5.755 12.172 4.673 12.515C3.64 12.843 2.677 13.313 1.783 13.926C1.669 14.004 1.544 14.03 1.408 14.005C1.272 13.979 1.166 13.91 1.088 13.796C1.029 13.711 1 13.616 1 13.513L1 2.487C1 2.346 1.048 2.227 1.144 2.131C1.241 2.035 1.359 1.987 1.5 1.987C1.603 1.987 1.697 2.016 1.783 2.074C2.677 2.687 3.64 3.157 4.673 3.485C5.755 3.828 6.864 4 8 4C9.136 4 10.245 3.828 11.327 3.485C12.36 3.157 13.323 2.687 14.217 2.074C14.334 1.995 14.459 1.967 14.592 1.992C14.726 2.017 14.833 2.088 14.912 2.204C14.971 2.289 15 2.384 15 2.487L15 13.513C15 13.654 14.952 13.773 14.856 13.869C14.759 13.965 14.641 14.013 14.5 14.013ZM9.85 11.143C10.45 11.236 11.043 11.376 11.63 11.562C12.461 11.826 13.251 12.174 14 12.607L14 3.393C13.251 3.826 12.461 4.174 11.63 4.438C10.449 4.813 9.239 5 8 5C6.761 5 5.551 4.813 4.37 4.438C3.539 4.174 2.749 3.826 2 3.393L2 10.293L4.086 8.207C4.266 8.027 4.472 7.887 4.706 7.786C4.959 7.676 5.224 7.621 5.5 7.621C5.776 7.621 6.041 7.676 6.294 7.786C6.528 7.887 6.734 8.027 6.914 8.207L9.85 11.143ZM10.293 6.293C10.488 6.098 10.724 6 11 6C11.276 6 11.512 6.098 11.707 6.293C11.902 6.488 12 6.724 12 7C12 7.276 11.902 7.512 11.707 7.707C11.512 7.902 11.276 8 11 8C10.724 8 10.488 7.902 10.293 7.707C10.098 7.512 10 7.276 10 7C10 6.724 10.098 6.488 10.293 6.293ZM6.207 8.914C6.012 8.719 5.776 8.621 5.5 8.621C5.224 8.621 4.988 8.719 4.793 8.914L2 11.707L2 12.607C2.749 12.174 3.539 11.826 4.37 11.562C5.551 11.187 6.761 11 8 11C8.099 11 8.198 11.001 8.296 11.004L6.207 8.914Z" />
  </svg>
</template>
```

### Svelte

```svelte
<!-- Gentleface "panorama" (line-round), MIT. https://gentleface.com/icons/panorama -->
<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="M14.5 14.013C14.397 14.013 14.303 13.984 14.217 13.926C13.323 13.313 12.36 12.843 11.327 12.515C10.245 12.172 9.136 12 8 12C6.864 12 5.755 12.172 4.673 12.515C3.64 12.843 2.677 13.313 1.783 13.926C1.669 14.004 1.544 14.03 1.408 14.005C1.272 13.979 1.166 13.91 1.088 13.796C1.029 13.711 1 13.616 1 13.513L1 2.487C1 2.346 1.048 2.227 1.144 2.131C1.241 2.035 1.359 1.987 1.5 1.987C1.603 1.987 1.697 2.016 1.783 2.074C2.677 2.687 3.64 3.157 4.673 3.485C5.755 3.828 6.864 4 8 4C9.136 4 10.245 3.828 11.327 3.485C12.36 3.157 13.323 2.687 14.217 2.074C14.334 1.995 14.459 1.967 14.592 1.992C14.726 2.017 14.833 2.088 14.912 2.204C14.971 2.289 15 2.384 15 2.487L15 13.513C15 13.654 14.952 13.773 14.856 13.869C14.759 13.965 14.641 14.013 14.5 14.013ZM9.85 11.143C10.45 11.236 11.043 11.376 11.63 11.562C12.461 11.826 13.251 12.174 14 12.607L14 3.393C13.251 3.826 12.461 4.174 11.63 4.438C10.449 4.813 9.239 5 8 5C6.761 5 5.551 4.813 4.37 4.438C3.539 4.174 2.749 3.826 2 3.393L2 10.293L4.086 8.207C4.266 8.027 4.472 7.887 4.706 7.786C4.959 7.676 5.224 7.621 5.5 7.621C5.776 7.621 6.041 7.676 6.294 7.786C6.528 7.887 6.734 8.027 6.914 8.207L9.85 11.143ZM10.293 6.293C10.488 6.098 10.724 6 11 6C11.276 6 11.512 6.098 11.707 6.293C11.902 6.488 12 6.724 12 7C12 7.276 11.902 7.512 11.707 7.707C11.512 7.902 11.276 8 11 8C10.724 8 10.488 7.902 10.293 7.707C10.098 7.512 10 7.276 10 7C10 6.724 10.098 6.488 10.293 6.293ZM6.207 8.914C6.012 8.719 5.776 8.621 5.5 8.621C5.224 8.621 4.988 8.719 4.793 8.914L2 11.707L2 12.607C2.749 12.174 3.539 11.826 4.37 11.562C5.551 11.187 6.761 11 8 11C8.099 11 8.198 11.001 8.296 11.004L6.207 8.914Z" />
</svg>
```

### HTML img

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

### CSS

```css
/* Gentleface "panorama" (line-round), MIT. https://gentleface.com/icons/panorama. Takes the text color. */
.icon-panorama {
  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='M14.5 14.013C14.397 14.013 14.303 13.984 14.217 13.926C13.323 13.313 12.36 12.843 11.327 12.515C10.245 12.172 9.136 12 8 12C6.864 12 5.755 12.172 4.673 12.515C3.64 12.843 2.677 13.313 1.783 13.926C1.669 14.004 1.544 14.03 1.408 14.005C1.272 13.979 1.166 13.91 1.088 13.796C1.029 13.711 1 13.616 1 13.513L1 2.487C1 2.346 1.048 2.227 1.144 2.131C1.241 2.035 1.359 1.987 1.5 1.987C1.603 1.987 1.697 2.016 1.783 2.074C2.677 2.687 3.64 3.157 4.673 3.485C5.755 3.828 6.864 4 8 4C9.136 4 10.245 3.828 11.327 3.485C12.36 3.157 13.323 2.687 14.217 2.074C14.334 1.995 14.459 1.967 14.592 1.992C14.726 2.017 14.833 2.088 14.912 2.204C14.971 2.289 15 2.384 15 2.487L15 13.513C15 13.654 14.952 13.773 14.856 13.869C14.759 13.965 14.641 14.013 14.5 14.013ZM9.85 11.143C10.45 11.236 11.043 11.376 11.63 11.562C12.461 11.826 13.251 12.174 14 12.607L14 3.393C13.251 3.826 12.461 4.174 11.63 4.438C10.449 4.813 9.239 5 8 5C6.761 5 5.551 4.813 4.37 4.438C3.539 4.174 2.749 3.826 2 3.393L2 10.293L4.086 8.207C4.266 8.027 4.472 7.887 4.706 7.786C4.959 7.676 5.224 7.621 5.5 7.621C5.776 7.621 6.041 7.676 6.294 7.786C6.528 7.887 6.734 8.027 6.914 8.207L9.85 11.143ZM10.293 6.293C10.488 6.098 10.724 6 11 6C11.276 6 11.512 6.098 11.707 6.293C11.902 6.488 12 6.724 12 7C12 7.276 11.902 7.512 11.707 7.707C11.512 7.902 11.276 8 11 8C10.724 8 10.488 7.902 10.293 7.707C10.098 7.512 10 7.276 10 7C10 6.724 10.098 6.488 10.293 6.293ZM6.207 8.914C6.012 8.719 5.776 8.621 5.5 8.621C5.224 8.621 4.988 8.719 4.793 8.914L2 11.707L2 12.607C2.749 12.174 3.539 11.826 4.37 11.562C5.551 11.187 6.761 11 8 11C8.099 11 8.198 11.001 8.296 11.004L6.207 8.914Z'/%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='M14.5 14.013C14.397 14.013 14.303 13.984 14.217 13.926C13.323 13.313 12.36 12.843 11.327 12.515C10.245 12.172 9.136 12 8 12C6.864 12 5.755 12.172 4.673 12.515C3.64 12.843 2.677 13.313 1.783 13.926C1.669 14.004 1.544 14.03 1.408 14.005C1.272 13.979 1.166 13.91 1.088 13.796C1.029 13.711 1 13.616 1 13.513L1 2.487C1 2.346 1.048 2.227 1.144 2.131C1.241 2.035 1.359 1.987 1.5 1.987C1.603 1.987 1.697 2.016 1.783 2.074C2.677 2.687 3.64 3.157 4.673 3.485C5.755 3.828 6.864 4 8 4C9.136 4 10.245 3.828 11.327 3.485C12.36 3.157 13.323 2.687 14.217 2.074C14.334 1.995 14.459 1.967 14.592 1.992C14.726 2.017 14.833 2.088 14.912 2.204C14.971 2.289 15 2.384 15 2.487L15 13.513C15 13.654 14.952 13.773 14.856 13.869C14.759 13.965 14.641 14.013 14.5 14.013ZM9.85 11.143C10.45 11.236 11.043 11.376 11.63 11.562C12.461 11.826 13.251 12.174 14 12.607L14 3.393C13.251 3.826 12.461 4.174 11.63 4.438C10.449 4.813 9.239 5 8 5C6.761 5 5.551 4.813 4.37 4.438C3.539 4.174 2.749 3.826 2 3.393L2 10.293L4.086 8.207C4.266 8.027 4.472 7.887 4.706 7.786C4.959 7.676 5.224 7.621 5.5 7.621C5.776 7.621 6.041 7.676 6.294 7.786C6.528 7.887 6.734 8.027 6.914 8.207L9.85 11.143ZM10.293 6.293C10.488 6.098 10.724 6 11 6C11.276 6 11.512 6.098 11.707 6.293C11.902 6.488 12 6.724 12 7C12 7.276 11.902 7.512 11.707 7.707C11.512 7.902 11.276 8 11 8C10.724 8 10.488 7.902 10.293 7.707C10.098 7.512 10 7.276 10 7C10 6.724 10.098 6.488 10.293 6.293ZM6.207 8.914C6.012 8.719 5.776 8.621 5.5 8.621C5.224 8.621 4.988 8.719 4.793 8.914L2 11.707L2 12.607C2.749 12.174 3.539 11.826 4.37 11.562C5.551 11.187 6.761 11 8 11C8.099 11 8.198 11.001 8.296 11.004L6.207 8.914Z'/%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='M14.5 14.013C14.397 14.013 14.303 13.984 14.217 13.926C13.323 13.313 12.36 12.843 11.327 12.515C10.245 12.172 9.136 12 8 12C6.864 12 5.755 12.172 4.673 12.515C3.64 12.843 2.677 13.313 1.783 13.926C1.669 14.004 1.544 14.03 1.408 14.005C1.272 13.979 1.166 13.91 1.088 13.796C1.029 13.711 1 13.616 1 13.513L1 2.487C1 2.346 1.048 2.227 1.144 2.131C1.241 2.035 1.359 1.987 1.5 1.987C1.603 1.987 1.697 2.016 1.783 2.074C2.677 2.687 3.64 3.157 4.673 3.485C5.755 3.828 6.864 4 8 4C9.136 4 10.245 3.828 11.327 3.485C12.36 3.157 13.323 2.687 14.217 2.074C14.334 1.995 14.459 1.967 14.592 1.992C14.726 2.017 14.833 2.088 14.912 2.204C14.971 2.289 15 2.384 15 2.487L15 13.513C15 13.654 14.952 13.773 14.856 13.869C14.759 13.965 14.641 14.013 14.5 14.013ZM9.85 11.143C10.45 11.236 11.043 11.376 11.63 11.562C12.461 11.826 13.251 12.174 14 12.607L14 3.393C13.251 3.826 12.461 4.174 11.63 4.438C10.449 4.813 9.239 5 8 5C6.761 5 5.551 4.813 4.37 4.438C3.539 4.174 2.749 3.826 2 3.393L2 10.293L4.086 8.207C4.266 8.027 4.472 7.887 4.706 7.786C4.959 7.676 5.224 7.621 5.5 7.621C5.776 7.621 6.041 7.676 6.294 7.786C6.528 7.887 6.734 8.027 6.914 8.207L9.85 11.143ZM10.293 6.293C10.488 6.098 10.724 6 11 6C11.276 6 11.512 6.098 11.707 6.293C11.902 6.488 12 6.724 12 7C12 7.276 11.902 7.512 11.707 7.707C11.512 7.902 11.276 8 11 8C10.724 8 10.488 7.902 10.293 7.707C10.098 7.512 10 7.276 10 7C10 6.724 10.098 6.488 10.293 6.293ZM6.207 8.914C6.012 8.719 5.776 8.621 5.5 8.621C5.224 8.621 4.988 8.719 4.793 8.914L2 11.707L2 12.607C2.749 12.174 3.539 11.826 4.37 11.562C5.551 11.187 6.761 11 8 11C8.099 11 8.198 11.001 8.296 11.004L6.207 8.914Z'/%3E%3C/svg%3E
```

### Sprite

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

### SwiftUI

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

struct PanoramaIcon: Shape {
    func path(in rect: CGRect) -> Path {
        var p = Path()
        p.move(to: CGPoint(x: 14.5, y: 14.013))
        p.addCurve(to: CGPoint(x: 14.217, y: 13.926), control1: CGPoint(x: 14.397, y: 14.013), control2: CGPoint(x: 14.303, y: 13.984))
        p.addCurve(to: CGPoint(x: 11.327, y: 12.515), control1: CGPoint(x: 13.323, y: 13.313), control2: CGPoint(x: 12.36, y: 12.843))
        p.addCurve(to: CGPoint(x: 8, y: 12), control1: CGPoint(x: 10.245, y: 12.172), control2: CGPoint(x: 9.136, y: 12))
        p.addCurve(to: CGPoint(x: 4.673, y: 12.515), control1: CGPoint(x: 6.864, y: 12), control2: CGPoint(x: 5.755, y: 12.172))
        p.addCurve(to: CGPoint(x: 1.783, y: 13.926), control1: CGPoint(x: 3.64, y: 12.843), control2: CGPoint(x: 2.677, y: 13.313))
        p.addCurve(to: CGPoint(x: 1.408, y: 14.005), control1: CGPoint(x: 1.669, y: 14.004), control2: CGPoint(x: 1.544, y: 14.03))
        p.addCurve(to: CGPoint(x: 1.088, y: 13.796), control1: CGPoint(x: 1.272, y: 13.979), control2: CGPoint(x: 1.166, y: 13.91))
        p.addCurve(to: CGPoint(x: 1, y: 13.513), control1: CGPoint(x: 1.029, y: 13.711), control2: CGPoint(x: 1, y: 13.616))
        p.addLine(to: CGPoint(x: 1, y: 2.487))
        p.addCurve(to: CGPoint(x: 1.144, y: 2.131), control1: CGPoint(x: 1, y: 2.346), control2: CGPoint(x: 1.048, y: 2.227))
        p.addCurve(to: CGPoint(x: 1.5, y: 1.987), control1: CGPoint(x: 1.241, y: 2.035), control2: CGPoint(x: 1.359, y: 1.987))
        p.addCurve(to: CGPoint(x: 1.783, y: 2.074), control1: CGPoint(x: 1.603, y: 1.987), control2: CGPoint(x: 1.697, y: 2.016))
        p.addCurve(to: CGPoint(x: 4.673, y: 3.485), control1: CGPoint(x: 2.677, y: 2.687), control2: CGPoint(x: 3.64, y: 3.157))
        p.addCurve(to: CGPoint(x: 8, y: 4), control1: CGPoint(x: 5.755, y: 3.828), control2: CGPoint(x: 6.864, y: 4))
        p.addCurve(to: CGPoint(x: 11.327, y: 3.485), control1: CGPoint(x: 9.136, y: 4), control2: CGPoint(x: 10.245, y: 3.828))
        p.addCurve(to: CGPoint(x: 14.217, y: 2.074), control1: CGPoint(x: 12.36, y: 3.157), control2: CGPoint(x: 13.323, y: 2.687))
        p.addCurve(to: CGPoint(x: 14.592, y: 1.992), control1: CGPoint(x: 14.334, y: 1.995), control2: CGPoint(x: 14.459, y: 1.967))
        p.addCurve(to: CGPoint(x: 14.912, y: 2.204), control1: CGPoint(x: 14.726, y: 2.017), control2: CGPoint(x: 14.833, y: 2.088))
        p.addCurve(to: CGPoint(x: 15, y: 2.487), control1: CGPoint(x: 14.971, y: 2.289), control2: CGPoint(x: 15, y: 2.384))
        p.addLine(to: CGPoint(x: 15, y: 13.513))
        p.addCurve(to: CGPoint(x: 14.856, y: 13.869), control1: CGPoint(x: 15, y: 13.654), control2: CGPoint(x: 14.952, y: 13.773))
        p.addCurve(to: CGPoint(x: 14.5, y: 14.013), control1: CGPoint(x: 14.759, y: 13.965), control2: CGPoint(x: 14.641, y: 14.013))
        p.closeSubpath()
        p.move(to: CGPoint(x: 9.85, y: 11.143))
        p.addCurve(to: CGPoint(x: 11.63, y: 11.562), control1: CGPoint(x: 10.45, y: 11.236), control2: CGPoint(x: 11.043, y: 11.376))
        p.addCurve(to: CGPoint(x: 14, y: 12.607), control1: CGPoint(x: 12.461, y: 11.826), control2: CGPoint(x: 13.251, y: 12.174))
        p.addLine(to: CGPoint(x: 14, y: 3.393))
        p.addCurve(to: CGPoint(x: 11.63, y: 4.438), control1: CGPoint(x: 13.251, y: 3.826), control2: CGPoint(x: 12.461, y: 4.174))
        p.addCurve(to: CGPoint(x: 8, y: 5), control1: CGPoint(x: 10.449, y: 4.813), control2: CGPoint(x: 9.239, y: 5))
        p.addCurve(to: CGPoint(x: 4.37, y: 4.438), control1: CGPoint(x: 6.761, y: 5), control2: CGPoint(x: 5.551, y: 4.813))
        p.addCurve(to: CGPoint(x: 2, y: 3.393), control1: CGPoint(x: 3.539, y: 4.174), control2: CGPoint(x: 2.749, y: 3.826))
        p.addLine(to: CGPoint(x: 2, y: 10.293))
        p.addLine(to: CGPoint(x: 4.086, y: 8.207))
        p.addCurve(to: CGPoint(x: 4.706, y: 7.786), control1: CGPoint(x: 4.266, y: 8.027), control2: CGPoint(x: 4.472, y: 7.887))
        p.addCurve(to: CGPoint(x: 5.5, y: 7.621), control1: CGPoint(x: 4.959, y: 7.676), control2: CGPoint(x: 5.224, y: 7.621))
        p.addCurve(to: CGPoint(x: 6.294, y: 7.786), control1: CGPoint(x: 5.776, y: 7.621), control2: CGPoint(x: 6.041, y: 7.676))
        p.addCurve(to: CGPoint(x: 6.914, y: 8.207), control1: CGPoint(x: 6.528, y: 7.887), control2: CGPoint(x: 6.734, y: 8.027))
        p.addLine(to: CGPoint(x: 9.85, y: 11.143))
        p.closeSubpath()
        p.move(to: CGPoint(x: 10.293, y: 6.293))
        p.addCurve(to: CGPoint(x: 11, y: 6), control1: CGPoint(x: 10.488, y: 6.098), control2: CGPoint(x: 10.724, y: 6))
        p.addCurve(to: CGPoint(x: 11.707, y: 6.293), control1: CGPoint(x: 11.276, y: 6), control2: CGPoint(x: 11.512, y: 6.098))
        p.addCurve(to: CGPoint(x: 12, y: 7), control1: CGPoint(x: 11.902, y: 6.488), control2: CGPoint(x: 12, y: 6.724))
        p.addCurve(to: CGPoint(x: 11.707, y: 7.707), control1: CGPoint(x: 12, y: 7.276), control2: CGPoint(x: 11.902, y: 7.512))
        p.addCurve(to: CGPoint(x: 11, y: 8), control1: CGPoint(x: 11.512, y: 7.902), control2: CGPoint(x: 11.276, y: 8))
        p.addCurve(to: CGPoint(x: 10.293, y: 7.707), control1: CGPoint(x: 10.724, y: 8), control2: CGPoint(x: 10.488, y: 7.902))
        p.addCurve(to: CGPoint(x: 10, y: 7), control1: CGPoint(x: 10.098, y: 7.512), control2: CGPoint(x: 10, y: 7.276))
        p.addCurve(to: CGPoint(x: 10.293, y: 6.293), control1: CGPoint(x: 10, y: 6.724), control2: CGPoint(x: 10.098, y: 6.488))
        p.closeSubpath()
        p.move(to: CGPoint(x: 6.207, y: 8.914))
        p.addCurve(to: CGPoint(x: 5.5, y: 8.621), control1: CGPoint(x: 6.012, y: 8.719), control2: CGPoint(x: 5.776, y: 8.621))
        p.addCurve(to: CGPoint(x: 4.793, y: 8.914), control1: CGPoint(x: 5.224, y: 8.621), control2: CGPoint(x: 4.988, y: 8.719))
        p.addLine(to: CGPoint(x: 2, y: 11.707))
        p.addLine(to: CGPoint(x: 2, y: 12.607))
        p.addCurve(to: CGPoint(x: 4.37, y: 11.562), control1: CGPoint(x: 2.749, y: 12.174), control2: CGPoint(x: 3.539, y: 11.826))
        p.addCurve(to: CGPoint(x: 8, y: 11), control1: CGPoint(x: 5.551, y: 11.187), control2: CGPoint(x: 6.761, y: 11))
        p.addCurve(to: CGPoint(x: 8.296, y: 11.004), control1: CGPoint(x: 8.099, y: 11), control2: CGPoint(x: 8.198, y: 11.001))
        p.addLine(to: CGPoint(x: 6.207, y: 8.914))
        p.closeSubpath()
        return p.applying(CGAffineTransform(scaleX: rect.width / 16, y: rect.height / 16))
    }
}

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

### Compose

```kotlin
// Gentleface "panorama" (line-round), MIT. https://gentleface.com/icons/panorama
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 PanoramaIcon: ImageVector by lazy {
    ImageVector.Builder(
        name = "panorama", defaultWidth = 16.dp, defaultHeight = 16.dp,
        viewportWidth = 16f, viewportHeight = 16f,
    ).addPath(
        pathData = addPathNodes("M14.5 14.013C14.397 14.013 14.303 13.984 14.217 13.926C13.323 13.313 12.36 12.843 11.327 12.515C10.245 12.172 9.136 12 8 12C6.864 12 5.755 12.172 4.673 12.515C3.64 12.843 2.677 13.313 1.783 13.926C1.669 14.004 1.544 14.03 1.408 14.005C1.272 13.979 1.166 13.91 1.088 13.796C1.029 13.711 1 13.616 1 13.513L1 2.487C1 2.346 1.048 2.227 1.144 2.131C1.241 2.035 1.359 1.987 1.5 1.987C1.603 1.987 1.697 2.016 1.783 2.074C2.677 2.687 3.64 3.157 4.673 3.485C5.755 3.828 6.864 4 8 4C9.136 4 10.245 3.828 11.327 3.485C12.36 3.157 13.323 2.687 14.217 2.074C14.334 1.995 14.459 1.967 14.592 1.992C14.726 2.017 14.833 2.088 14.912 2.204C14.971 2.289 15 2.384 15 2.487L15 13.513C15 13.654 14.952 13.773 14.856 13.869C14.759 13.965 14.641 14.013 14.5 14.013ZM9.85 11.143C10.45 11.236 11.043 11.376 11.63 11.562C12.461 11.826 13.251 12.174 14 12.607L14 3.393C13.251 3.826 12.461 4.174 11.63 4.438C10.449 4.813 9.239 5 8 5C6.761 5 5.551 4.813 4.37 4.438C3.539 4.174 2.749 3.826 2 3.393L2 10.293L4.086 8.207C4.266 8.027 4.472 7.887 4.706 7.786C4.959 7.676 5.224 7.621 5.5 7.621C5.776 7.621 6.041 7.676 6.294 7.786C6.528 7.887 6.734 8.027 6.914 8.207L9.85 11.143ZM10.293 6.293C10.488 6.098 10.724 6 11 6C11.276 6 11.512 6.098 11.707 6.293C11.902 6.488 12 6.724 12 7C12 7.276 11.902 7.512 11.707 7.707C11.512 7.902 11.276 8 11 8C10.724 8 10.488 7.902 10.293 7.707C10.098 7.512 10 7.276 10 7C10 6.724 10.098 6.488 10.293 6.293ZM6.207 8.914C6.012 8.719 5.776 8.621 5.5 8.621C5.224 8.621 4.988 8.719 4.793 8.914L2 11.707L2 12.607C2.749 12.174 3.539 11.826 4.37 11.562C5.551 11.187 6.761 11 8 11C8.099 11 8.198 11.001 8.296 11.004L6.207 8.914Z"),
        fill = SolidColor(Color.Black),
    ).build()
}

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

### Android XML

```xml
<!-- res/drawable/ic_panorama.xml · Gentleface "panorama" (line-round), MIT. https://gentleface.com/icons/panorama -->
<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="M14.5 14.013C14.397 14.013 14.303 13.984 14.217 13.926C13.323 13.313 12.36 12.843 11.327 12.515C10.245 12.172 9.136 12 8 12C6.864 12 5.755 12.172 4.673 12.515C3.64 12.843 2.677 13.313 1.783 13.926C1.669 14.004 1.544 14.03 1.408 14.005C1.272 13.979 1.166 13.91 1.088 13.796C1.029 13.711 1 13.616 1 13.513L1 2.487C1 2.346 1.048 2.227 1.144 2.131C1.241 2.035 1.359 1.987 1.5 1.987C1.603 1.987 1.697 2.016 1.783 2.074C2.677 2.687 3.64 3.157 4.673 3.485C5.755 3.828 6.864 4 8 4C9.136 4 10.245 3.828 11.327 3.485C12.36 3.157 13.323 2.687 14.217 2.074C14.334 1.995 14.459 1.967 14.592 1.992C14.726 2.017 14.833 2.088 14.912 2.204C14.971 2.289 15 2.384 15 2.487L15 13.513C15 13.654 14.952 13.773 14.856 13.869C14.759 13.965 14.641 14.013 14.5 14.013ZM9.85 11.143C10.45 11.236 11.043 11.376 11.63 11.562C12.461 11.826 13.251 12.174 14 12.607L14 3.393C13.251 3.826 12.461 4.174 11.63 4.438C10.449 4.813 9.239 5 8 5C6.761 5 5.551 4.813 4.37 4.438C3.539 4.174 2.749 3.826 2 3.393L2 10.293L4.086 8.207C4.266 8.027 4.472 7.887 4.706 7.786C4.959 7.676 5.224 7.621 5.5 7.621C5.776 7.621 6.041 7.676 6.294 7.786C6.528 7.887 6.734 8.027 6.914 8.207L9.85 11.143ZM10.293 6.293C10.488 6.098 10.724 6 11 6C11.276 6 11.512 6.098 11.707 6.293C11.902 6.488 12 6.724 12 7C12 7.276 11.902 7.512 11.707 7.707C11.512 7.902 11.276 8 11 8C10.724 8 10.488 7.902 10.293 7.707C10.098 7.512 10 7.276 10 7C10 6.724 10.098 6.488 10.293 6.293ZM6.207 8.914C6.012 8.719 5.776 8.621 5.5 8.621C5.224 8.621 4.988 8.719 4.793 8.914L2 11.707L2 12.607C2.749 12.174 3.539 11.826 4.37 11.562C5.551 11.187 6.761 11 8 11C8.099 11 8.198 11.001 8.296 11.004L6.207 8.914Z"/>
</vector>
```

### Flutter

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

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

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

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

  @override
  void paint(Canvas canvas, Size size) {
    canvas.scale(size.width / 16, size.height / 16);
    final p = Path()
      ..moveTo(14.5, 14.013)
      ..cubicTo(14.397, 14.013, 14.303, 13.984, 14.217, 13.926)
      ..cubicTo(13.323, 13.313, 12.36, 12.843, 11.327, 12.515)
      ..cubicTo(10.245, 12.172, 9.136, 12, 8, 12)
      ..cubicTo(6.864, 12, 5.755, 12.172, 4.673, 12.515)
      ..cubicTo(3.64, 12.843, 2.677, 13.313, 1.783, 13.926)
      ..cubicTo(1.669, 14.004, 1.544, 14.03, 1.408, 14.005)
      ..cubicTo(1.272, 13.979, 1.166, 13.91, 1.088, 13.796)
      ..cubicTo(1.029, 13.711, 1, 13.616, 1, 13.513)
      ..lineTo(1, 2.487)
      ..cubicTo(1, 2.346, 1.048, 2.227, 1.144, 2.131)
      ..cubicTo(1.241, 2.035, 1.359, 1.987, 1.5, 1.987)
      ..cubicTo(1.603, 1.987, 1.697, 2.016, 1.783, 2.074)
      ..cubicTo(2.677, 2.687, 3.64, 3.157, 4.673, 3.485)
      ..cubicTo(5.755, 3.828, 6.864, 4, 8, 4)
      ..cubicTo(9.136, 4, 10.245, 3.828, 11.327, 3.485)
      ..cubicTo(12.36, 3.157, 13.323, 2.687, 14.217, 2.074)
      ..cubicTo(14.334, 1.995, 14.459, 1.967, 14.592, 1.992)
      ..cubicTo(14.726, 2.017, 14.833, 2.088, 14.912, 2.204)
      ..cubicTo(14.971, 2.289, 15, 2.384, 15, 2.487)
      ..lineTo(15, 13.513)
      ..cubicTo(15, 13.654, 14.952, 13.773, 14.856, 13.869)
      ..cubicTo(14.759, 13.965, 14.641, 14.013, 14.5, 14.013)
      ..close()
      ..moveTo(9.85, 11.143)
      ..cubicTo(10.45, 11.236, 11.043, 11.376, 11.63, 11.562)
      ..cubicTo(12.461, 11.826, 13.251, 12.174, 14, 12.607)
      ..lineTo(14, 3.393)
      ..cubicTo(13.251, 3.826, 12.461, 4.174, 11.63, 4.438)
      ..cubicTo(10.449, 4.813, 9.239, 5, 8, 5)
      ..cubicTo(6.761, 5, 5.551, 4.813, 4.37, 4.438)
      ..cubicTo(3.539, 4.174, 2.749, 3.826, 2, 3.393)
      ..lineTo(2, 10.293)
      ..lineTo(4.086, 8.207)
      ..cubicTo(4.266, 8.027, 4.472, 7.887, 4.706, 7.786)
      ..cubicTo(4.959, 7.676, 5.224, 7.621, 5.5, 7.621)
      ..cubicTo(5.776, 7.621, 6.041, 7.676, 6.294, 7.786)
      ..cubicTo(6.528, 7.887, 6.734, 8.027, 6.914, 8.207)
      ..lineTo(9.85, 11.143)
      ..close()
      ..moveTo(10.293, 6.293)
      ..cubicTo(10.488, 6.098, 10.724, 6, 11, 6)
      ..cubicTo(11.276, 6, 11.512, 6.098, 11.707, 6.293)
      ..cubicTo(11.902, 6.488, 12, 6.724, 12, 7)
      ..cubicTo(12, 7.276, 11.902, 7.512, 11.707, 7.707)
      ..cubicTo(11.512, 7.902, 11.276, 8, 11, 8)
      ..cubicTo(10.724, 8, 10.488, 7.902, 10.293, 7.707)
      ..cubicTo(10.098, 7.512, 10, 7.276, 10, 7)
      ..cubicTo(10, 6.724, 10.098, 6.488, 10.293, 6.293)
      ..close()
      ..moveTo(6.207, 8.914)
      ..cubicTo(6.012, 8.719, 5.776, 8.621, 5.5, 8.621)
      ..cubicTo(5.224, 8.621, 4.988, 8.719, 4.793, 8.914)
      ..lineTo(2, 11.707)
      ..lineTo(2, 12.607)
      ..cubicTo(2.749, 12.174, 3.539, 11.826, 4.37, 11.562)
      ..cubicTo(5.551, 11.187, 6.761, 11, 8, 11)
      ..cubicTo(8.099, 11, 8.198, 11.001, 8.296, 11.004)
      ..lineTo(6.207, 8.914)
      ..close();
    canvas.drawPath(p, Paint()..color = color);
  }

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