# shield-virus icon

Shield virus. Gentleface icon, drawn on the 16 px pixel grid. Free, MIT licensed. Page: https://gentleface.com/icons/shield-virus

- Category: Security & privacy
- Use it for: antivirus, malware protection, anti malware, virus protection
- Tags: antivirus, malware, malware-protection, virus, security, protection, shield
- Family: shield, shield-alert, shield-arrow-down, shield-arrow-up, shield-bolt, shield-bug, shield-check, shield-clock, shield-code, shield-eye, shield-gear, shield-link, shield-lock, shield-medical, shield-off, shield-pause, shield-pencil, shield-plus, shield-question, shield-search, shield-sparkle, shield-sync, shield-x
- Component name: ShieldVirusIcon
- Added: 2026-11-07
- Since: version 0.5.0
- npm: `import { ShieldVirusIcon } from '@gentleface/react';` (@gentleface/react 0.6.0)

## Alternatives

- `shield-search`: run a scan

## Don't confuse with

- `virus`: the bare germ means illness (health)

## Also fits

- device protection: antivirus or malware protection (antivirus)
- virus: antivirus or malware protection
- security scan: antivirus protection as a feature

## Files

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

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

The SVG of every style: https://gentleface.com/icons/shield-virus.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="M12.528 10.763C12.243 11.414 11.835 12.024 11.302 12.592C10.825 13.101 10.259 13.565 9.605 13.984C9.015 14.362 8.375 14.689 7.686 14.964C7.562 15.014 7.438 15.014 7.314 14.964C6.625 14.689 5.985 14.362 5.395 13.984C4.741 13.565 4.175 13.101 3.698 12.592C3.165 12.024 2.757 11.414 2.472 10.763C2.157 10.044 2 9.29 2 8.5L2 3.5C2 3.359 2.048 3.241 2.144 3.144C2.241 3.048 2.359 3 2.5 3C3.471 3 4.307 2.865 5.008 2.596C5.754 2.309 6.467 1.826 7.146 1.146C7.244 1.049 7.362 1 7.5 1C7.638 1 7.756 1.049 7.854 1.146C8.533 1.826 9.246 2.309 9.992 2.596C10.693 2.865 11.529 3 12.5 3C12.641 3 12.759 3.048 12.856 3.144C12.952 3.241 13 3.359 13 3.5L13 8.5C13 9.29 12.843 10.044 12.528 10.763ZM4.427 11.908C4.848 12.357 5.35 12.768 5.934 13.141C6.418 13.451 6.94 13.724 7.5 13.96C8.06 13.724 8.582 13.451 9.066 13.141C9.65 12.768 10.152 12.357 10.573 11.908C11.524 10.893 12 9.757 12 8.5L12 3.989C11.111 3.947 10.322 3.794 9.633 3.529C8.886 3.242 8.175 2.795 7.5 2.189C6.825 2.795 6.114 3.242 5.367 3.529C4.678 3.794 3.889 3.947 3 3.989L3 8.5C3 9.757 3.476 10.893 4.427 11.908ZM8.854 6.854C8.876 6.901 8.897 6.95 8.914 7L10.5 7C10.641 7 10.759 7.048 10.856 7.144C10.952 7.241 11 7.359 11 7.5C11 7.641 10.952 7.759 10.856 7.856C10.759 7.952 10.641 8 10.5 8L8.914 8C8.897 8.05 8.876 8.099 8.854 8.146L10.354 9.646C10.453 9.746 10.503 9.864 10.503 10C10.503 10.136 10.453 10.254 10.354 10.354C10.254 10.453 10.136 10.503 10 10.503C9.864 10.503 9.746 10.453 9.646 10.354L8.146 8.854C8.099 8.876 8.05 8.897 8 8.914L8 10.5C8 10.641 7.952 10.759 7.856 10.856C7.759 10.952 7.641 11 7.5 11C7.359 11 7.241 10.952 7.144 10.856C7.048 10.759 7 10.641 7 10.5L7 8.914C6.95 8.897 6.901 8.876 6.854 8.854L5.354 10.354C5.256 10.451 5.138 10.5 5 10.5C4.862 10.5 4.744 10.451 4.646 10.354C4.547 10.254 4.497 10.136 4.497 10C4.497 9.864 4.547 9.746 4.646 9.646L6.146 8.146C6.124 8.099 6.103 8.05 6.086 8L4.5 8C4.359 8 4.241 7.952 4.144 7.856C4.048 7.759 4 7.641 4 7.5C4 7.359 4.048 7.241 4.144 7.144C4.241 7.048 4.359 7 4.5 7L6.086 7C6.103 6.95 6.124 6.901 6.146 6.854L4.646 5.354C4.547 5.254 4.497 5.136 4.497 5C4.497 4.864 4.547 4.746 4.646 4.646C4.746 4.547 4.864 4.497 5 4.497C5.136 4.497 5.254 4.547 5.354 4.646L6.854 6.146C6.901 6.124 6.95 6.103 7 6.086L7 4.5C7 4.359 7.048 4.241 7.144 4.144C7.241 4.048 7.359 4 7.5 4C7.641 4 7.759 4.048 7.856 4.144C7.952 4.241 8 4.359 8 4.5L8 6.086C8.05 6.103 8.099 6.124 8.146 6.146L9.646 4.646C9.746 4.547 9.864 4.497 10 4.497C10.136 4.497 10.254 4.547 10.354 4.646C10.451 4.744 10.5 4.862 10.5 5C10.5 5.138 10.451 5.256 10.354 5.354L8.854 6.854Z"/></svg>
```

### React

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

export function ShieldVirusIcon(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="M12.528 10.763C12.243 11.414 11.835 12.024 11.302 12.592C10.825 13.101 10.259 13.565 9.605 13.984C9.015 14.362 8.375 14.689 7.686 14.964C7.562 15.014 7.438 15.014 7.314 14.964C6.625 14.689 5.985 14.362 5.395 13.984C4.741 13.565 4.175 13.101 3.698 12.592C3.165 12.024 2.757 11.414 2.472 10.763C2.157 10.044 2 9.29 2 8.5L2 3.5C2 3.359 2.048 3.241 2.144 3.144C2.241 3.048 2.359 3 2.5 3C3.471 3 4.307 2.865 5.008 2.596C5.754 2.309 6.467 1.826 7.146 1.146C7.244 1.049 7.362 1 7.5 1C7.638 1 7.756 1.049 7.854 1.146C8.533 1.826 9.246 2.309 9.992 2.596C10.693 2.865 11.529 3 12.5 3C12.641 3 12.759 3.048 12.856 3.144C12.952 3.241 13 3.359 13 3.5L13 8.5C13 9.29 12.843 10.044 12.528 10.763ZM4.427 11.908C4.848 12.357 5.35 12.768 5.934 13.141C6.418 13.451 6.94 13.724 7.5 13.96C8.06 13.724 8.582 13.451 9.066 13.141C9.65 12.768 10.152 12.357 10.573 11.908C11.524 10.893 12 9.757 12 8.5L12 3.989C11.111 3.947 10.322 3.794 9.633 3.529C8.886 3.242 8.175 2.795 7.5 2.189C6.825 2.795 6.114 3.242 5.367 3.529C4.678 3.794 3.889 3.947 3 3.989L3 8.5C3 9.757 3.476 10.893 4.427 11.908ZM8.854 6.854C8.876 6.901 8.897 6.95 8.914 7L10.5 7C10.641 7 10.759 7.048 10.856 7.144C10.952 7.241 11 7.359 11 7.5C11 7.641 10.952 7.759 10.856 7.856C10.759 7.952 10.641 8 10.5 8L8.914 8C8.897 8.05 8.876 8.099 8.854 8.146L10.354 9.646C10.453 9.746 10.503 9.864 10.503 10C10.503 10.136 10.453 10.254 10.354 10.354C10.254 10.453 10.136 10.503 10 10.503C9.864 10.503 9.746 10.453 9.646 10.354L8.146 8.854C8.099 8.876 8.05 8.897 8 8.914L8 10.5C8 10.641 7.952 10.759 7.856 10.856C7.759 10.952 7.641 11 7.5 11C7.359 11 7.241 10.952 7.144 10.856C7.048 10.759 7 10.641 7 10.5L7 8.914C6.95 8.897 6.901 8.876 6.854 8.854L5.354 10.354C5.256 10.451 5.138 10.5 5 10.5C4.862 10.5 4.744 10.451 4.646 10.354C4.547 10.254 4.497 10.136 4.497 10C4.497 9.864 4.547 9.746 4.646 9.646L6.146 8.146C6.124 8.099 6.103 8.05 6.086 8L4.5 8C4.359 8 4.241 7.952 4.144 7.856C4.048 7.759 4 7.641 4 7.5C4 7.359 4.048 7.241 4.144 7.144C4.241 7.048 4.359 7 4.5 7L6.086 7C6.103 6.95 6.124 6.901 6.146 6.854L4.646 5.354C4.547 5.254 4.497 5.136 4.497 5C4.497 4.864 4.547 4.746 4.646 4.646C4.746 4.547 4.864 4.497 5 4.497C5.136 4.497 5.254 4.547 5.354 4.646L6.854 6.146C6.901 6.124 6.95 6.103 7 6.086L7 4.5C7 4.359 7.048 4.241 7.144 4.144C7.241 4.048 7.359 4 7.5 4C7.641 4 7.759 4.048 7.856 4.144C7.952 4.241 8 4.359 8 4.5L8 6.086C8.05 6.103 8.099 6.124 8.146 6.146L9.646 4.646C9.746 4.547 9.864 4.497 10 4.497C10.136 4.497 10.254 4.547 10.354 4.646C10.451 4.744 10.5 4.862 10.5 5C10.5 5.138 10.451 5.256 10.354 5.354L8.854 6.854Z" />
    </svg>
  );
}
```

### Vue

```vue
<!-- Gentleface "shield-virus" (line-round), MIT. https://gentleface.com/icons/shield-virus -->
<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="M12.528 10.763C12.243 11.414 11.835 12.024 11.302 12.592C10.825 13.101 10.259 13.565 9.605 13.984C9.015 14.362 8.375 14.689 7.686 14.964C7.562 15.014 7.438 15.014 7.314 14.964C6.625 14.689 5.985 14.362 5.395 13.984C4.741 13.565 4.175 13.101 3.698 12.592C3.165 12.024 2.757 11.414 2.472 10.763C2.157 10.044 2 9.29 2 8.5L2 3.5C2 3.359 2.048 3.241 2.144 3.144C2.241 3.048 2.359 3 2.5 3C3.471 3 4.307 2.865 5.008 2.596C5.754 2.309 6.467 1.826 7.146 1.146C7.244 1.049 7.362 1 7.5 1C7.638 1 7.756 1.049 7.854 1.146C8.533 1.826 9.246 2.309 9.992 2.596C10.693 2.865 11.529 3 12.5 3C12.641 3 12.759 3.048 12.856 3.144C12.952 3.241 13 3.359 13 3.5L13 8.5C13 9.29 12.843 10.044 12.528 10.763ZM4.427 11.908C4.848 12.357 5.35 12.768 5.934 13.141C6.418 13.451 6.94 13.724 7.5 13.96C8.06 13.724 8.582 13.451 9.066 13.141C9.65 12.768 10.152 12.357 10.573 11.908C11.524 10.893 12 9.757 12 8.5L12 3.989C11.111 3.947 10.322 3.794 9.633 3.529C8.886 3.242 8.175 2.795 7.5 2.189C6.825 2.795 6.114 3.242 5.367 3.529C4.678 3.794 3.889 3.947 3 3.989L3 8.5C3 9.757 3.476 10.893 4.427 11.908ZM8.854 6.854C8.876 6.901 8.897 6.95 8.914 7L10.5 7C10.641 7 10.759 7.048 10.856 7.144C10.952 7.241 11 7.359 11 7.5C11 7.641 10.952 7.759 10.856 7.856C10.759 7.952 10.641 8 10.5 8L8.914 8C8.897 8.05 8.876 8.099 8.854 8.146L10.354 9.646C10.453 9.746 10.503 9.864 10.503 10C10.503 10.136 10.453 10.254 10.354 10.354C10.254 10.453 10.136 10.503 10 10.503C9.864 10.503 9.746 10.453 9.646 10.354L8.146 8.854C8.099 8.876 8.05 8.897 8 8.914L8 10.5C8 10.641 7.952 10.759 7.856 10.856C7.759 10.952 7.641 11 7.5 11C7.359 11 7.241 10.952 7.144 10.856C7.048 10.759 7 10.641 7 10.5L7 8.914C6.95 8.897 6.901 8.876 6.854 8.854L5.354 10.354C5.256 10.451 5.138 10.5 5 10.5C4.862 10.5 4.744 10.451 4.646 10.354C4.547 10.254 4.497 10.136 4.497 10C4.497 9.864 4.547 9.746 4.646 9.646L6.146 8.146C6.124 8.099 6.103 8.05 6.086 8L4.5 8C4.359 8 4.241 7.952 4.144 7.856C4.048 7.759 4 7.641 4 7.5C4 7.359 4.048 7.241 4.144 7.144C4.241 7.048 4.359 7 4.5 7L6.086 7C6.103 6.95 6.124 6.901 6.146 6.854L4.646 5.354C4.547 5.254 4.497 5.136 4.497 5C4.497 4.864 4.547 4.746 4.646 4.646C4.746 4.547 4.864 4.497 5 4.497C5.136 4.497 5.254 4.547 5.354 4.646L6.854 6.146C6.901 6.124 6.95 6.103 7 6.086L7 4.5C7 4.359 7.048 4.241 7.144 4.144C7.241 4.048 7.359 4 7.5 4C7.641 4 7.759 4.048 7.856 4.144C7.952 4.241 8 4.359 8 4.5L8 6.086C8.05 6.103 8.099 6.124 8.146 6.146L9.646 4.646C9.746 4.547 9.864 4.497 10 4.497C10.136 4.497 10.254 4.547 10.354 4.646C10.451 4.744 10.5 4.862 10.5 5C10.5 5.138 10.451 5.256 10.354 5.354L8.854 6.854Z" />
  </svg>
</template>
```

### Svelte

```svelte
<!-- Gentleface "shield-virus" (line-round), MIT. https://gentleface.com/icons/shield-virus -->
<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="M12.528 10.763C12.243 11.414 11.835 12.024 11.302 12.592C10.825 13.101 10.259 13.565 9.605 13.984C9.015 14.362 8.375 14.689 7.686 14.964C7.562 15.014 7.438 15.014 7.314 14.964C6.625 14.689 5.985 14.362 5.395 13.984C4.741 13.565 4.175 13.101 3.698 12.592C3.165 12.024 2.757 11.414 2.472 10.763C2.157 10.044 2 9.29 2 8.5L2 3.5C2 3.359 2.048 3.241 2.144 3.144C2.241 3.048 2.359 3 2.5 3C3.471 3 4.307 2.865 5.008 2.596C5.754 2.309 6.467 1.826 7.146 1.146C7.244 1.049 7.362 1 7.5 1C7.638 1 7.756 1.049 7.854 1.146C8.533 1.826 9.246 2.309 9.992 2.596C10.693 2.865 11.529 3 12.5 3C12.641 3 12.759 3.048 12.856 3.144C12.952 3.241 13 3.359 13 3.5L13 8.5C13 9.29 12.843 10.044 12.528 10.763ZM4.427 11.908C4.848 12.357 5.35 12.768 5.934 13.141C6.418 13.451 6.94 13.724 7.5 13.96C8.06 13.724 8.582 13.451 9.066 13.141C9.65 12.768 10.152 12.357 10.573 11.908C11.524 10.893 12 9.757 12 8.5L12 3.989C11.111 3.947 10.322 3.794 9.633 3.529C8.886 3.242 8.175 2.795 7.5 2.189C6.825 2.795 6.114 3.242 5.367 3.529C4.678 3.794 3.889 3.947 3 3.989L3 8.5C3 9.757 3.476 10.893 4.427 11.908ZM8.854 6.854C8.876 6.901 8.897 6.95 8.914 7L10.5 7C10.641 7 10.759 7.048 10.856 7.144C10.952 7.241 11 7.359 11 7.5C11 7.641 10.952 7.759 10.856 7.856C10.759 7.952 10.641 8 10.5 8L8.914 8C8.897 8.05 8.876 8.099 8.854 8.146L10.354 9.646C10.453 9.746 10.503 9.864 10.503 10C10.503 10.136 10.453 10.254 10.354 10.354C10.254 10.453 10.136 10.503 10 10.503C9.864 10.503 9.746 10.453 9.646 10.354L8.146 8.854C8.099 8.876 8.05 8.897 8 8.914L8 10.5C8 10.641 7.952 10.759 7.856 10.856C7.759 10.952 7.641 11 7.5 11C7.359 11 7.241 10.952 7.144 10.856C7.048 10.759 7 10.641 7 10.5L7 8.914C6.95 8.897 6.901 8.876 6.854 8.854L5.354 10.354C5.256 10.451 5.138 10.5 5 10.5C4.862 10.5 4.744 10.451 4.646 10.354C4.547 10.254 4.497 10.136 4.497 10C4.497 9.864 4.547 9.746 4.646 9.646L6.146 8.146C6.124 8.099 6.103 8.05 6.086 8L4.5 8C4.359 8 4.241 7.952 4.144 7.856C4.048 7.759 4 7.641 4 7.5C4 7.359 4.048 7.241 4.144 7.144C4.241 7.048 4.359 7 4.5 7L6.086 7C6.103 6.95 6.124 6.901 6.146 6.854L4.646 5.354C4.547 5.254 4.497 5.136 4.497 5C4.497 4.864 4.547 4.746 4.646 4.646C4.746 4.547 4.864 4.497 5 4.497C5.136 4.497 5.254 4.547 5.354 4.646L6.854 6.146C6.901 6.124 6.95 6.103 7 6.086L7 4.5C7 4.359 7.048 4.241 7.144 4.144C7.241 4.048 7.359 4 7.5 4C7.641 4 7.759 4.048 7.856 4.144C7.952 4.241 8 4.359 8 4.5L8 6.086C8.05 6.103 8.099 6.124 8.146 6.146L9.646 4.646C9.746 4.547 9.864 4.497 10 4.497C10.136 4.497 10.254 4.547 10.354 4.646C10.451 4.744 10.5 4.862 10.5 5C10.5 5.138 10.451 5.256 10.354 5.354L8.854 6.854Z" />
</svg>
```

### HTML img

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

### CSS

```css
/* Gentleface "shield-virus" (line-round), MIT. https://gentleface.com/icons/shield-virus. Takes the text color. */
.icon-shield-virus {
  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='M12.528 10.763C12.243 11.414 11.835 12.024 11.302 12.592C10.825 13.101 10.259 13.565 9.605 13.984C9.015 14.362 8.375 14.689 7.686 14.964C7.562 15.014 7.438 15.014 7.314 14.964C6.625 14.689 5.985 14.362 5.395 13.984C4.741 13.565 4.175 13.101 3.698 12.592C3.165 12.024 2.757 11.414 2.472 10.763C2.157 10.044 2 9.29 2 8.5L2 3.5C2 3.359 2.048 3.241 2.144 3.144C2.241 3.048 2.359 3 2.5 3C3.471 3 4.307 2.865 5.008 2.596C5.754 2.309 6.467 1.826 7.146 1.146C7.244 1.049 7.362 1 7.5 1C7.638 1 7.756 1.049 7.854 1.146C8.533 1.826 9.246 2.309 9.992 2.596C10.693 2.865 11.529 3 12.5 3C12.641 3 12.759 3.048 12.856 3.144C12.952 3.241 13 3.359 13 3.5L13 8.5C13 9.29 12.843 10.044 12.528 10.763ZM4.427 11.908C4.848 12.357 5.35 12.768 5.934 13.141C6.418 13.451 6.94 13.724 7.5 13.96C8.06 13.724 8.582 13.451 9.066 13.141C9.65 12.768 10.152 12.357 10.573 11.908C11.524 10.893 12 9.757 12 8.5L12 3.989C11.111 3.947 10.322 3.794 9.633 3.529C8.886 3.242 8.175 2.795 7.5 2.189C6.825 2.795 6.114 3.242 5.367 3.529C4.678 3.794 3.889 3.947 3 3.989L3 8.5C3 9.757 3.476 10.893 4.427 11.908ZM8.854 6.854C8.876 6.901 8.897 6.95 8.914 7L10.5 7C10.641 7 10.759 7.048 10.856 7.144C10.952 7.241 11 7.359 11 7.5C11 7.641 10.952 7.759 10.856 7.856C10.759 7.952 10.641 8 10.5 8L8.914 8C8.897 8.05 8.876 8.099 8.854 8.146L10.354 9.646C10.453 9.746 10.503 9.864 10.503 10C10.503 10.136 10.453 10.254 10.354 10.354C10.254 10.453 10.136 10.503 10 10.503C9.864 10.503 9.746 10.453 9.646 10.354L8.146 8.854C8.099 8.876 8.05 8.897 8 8.914L8 10.5C8 10.641 7.952 10.759 7.856 10.856C7.759 10.952 7.641 11 7.5 11C7.359 11 7.241 10.952 7.144 10.856C7.048 10.759 7 10.641 7 10.5L7 8.914C6.95 8.897 6.901 8.876 6.854 8.854L5.354 10.354C5.256 10.451 5.138 10.5 5 10.5C4.862 10.5 4.744 10.451 4.646 10.354C4.547 10.254 4.497 10.136 4.497 10C4.497 9.864 4.547 9.746 4.646 9.646L6.146 8.146C6.124 8.099 6.103 8.05 6.086 8L4.5 8C4.359 8 4.241 7.952 4.144 7.856C4.048 7.759 4 7.641 4 7.5C4 7.359 4.048 7.241 4.144 7.144C4.241 7.048 4.359 7 4.5 7L6.086 7C6.103 6.95 6.124 6.901 6.146 6.854L4.646 5.354C4.547 5.254 4.497 5.136 4.497 5C4.497 4.864 4.547 4.746 4.646 4.646C4.746 4.547 4.864 4.497 5 4.497C5.136 4.497 5.254 4.547 5.354 4.646L6.854 6.146C6.901 6.124 6.95 6.103 7 6.086L7 4.5C7 4.359 7.048 4.241 7.144 4.144C7.241 4.048 7.359 4 7.5 4C7.641 4 7.759 4.048 7.856 4.144C7.952 4.241 8 4.359 8 4.5L8 6.086C8.05 6.103 8.099 6.124 8.146 6.146L9.646 4.646C9.746 4.547 9.864 4.497 10 4.497C10.136 4.497 10.254 4.547 10.354 4.646C10.451 4.744 10.5 4.862 10.5 5C10.5 5.138 10.451 5.256 10.354 5.354L8.854 6.854Z'/%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='M12.528 10.763C12.243 11.414 11.835 12.024 11.302 12.592C10.825 13.101 10.259 13.565 9.605 13.984C9.015 14.362 8.375 14.689 7.686 14.964C7.562 15.014 7.438 15.014 7.314 14.964C6.625 14.689 5.985 14.362 5.395 13.984C4.741 13.565 4.175 13.101 3.698 12.592C3.165 12.024 2.757 11.414 2.472 10.763C2.157 10.044 2 9.29 2 8.5L2 3.5C2 3.359 2.048 3.241 2.144 3.144C2.241 3.048 2.359 3 2.5 3C3.471 3 4.307 2.865 5.008 2.596C5.754 2.309 6.467 1.826 7.146 1.146C7.244 1.049 7.362 1 7.5 1C7.638 1 7.756 1.049 7.854 1.146C8.533 1.826 9.246 2.309 9.992 2.596C10.693 2.865 11.529 3 12.5 3C12.641 3 12.759 3.048 12.856 3.144C12.952 3.241 13 3.359 13 3.5L13 8.5C13 9.29 12.843 10.044 12.528 10.763ZM4.427 11.908C4.848 12.357 5.35 12.768 5.934 13.141C6.418 13.451 6.94 13.724 7.5 13.96C8.06 13.724 8.582 13.451 9.066 13.141C9.65 12.768 10.152 12.357 10.573 11.908C11.524 10.893 12 9.757 12 8.5L12 3.989C11.111 3.947 10.322 3.794 9.633 3.529C8.886 3.242 8.175 2.795 7.5 2.189C6.825 2.795 6.114 3.242 5.367 3.529C4.678 3.794 3.889 3.947 3 3.989L3 8.5C3 9.757 3.476 10.893 4.427 11.908ZM8.854 6.854C8.876 6.901 8.897 6.95 8.914 7L10.5 7C10.641 7 10.759 7.048 10.856 7.144C10.952 7.241 11 7.359 11 7.5C11 7.641 10.952 7.759 10.856 7.856C10.759 7.952 10.641 8 10.5 8L8.914 8C8.897 8.05 8.876 8.099 8.854 8.146L10.354 9.646C10.453 9.746 10.503 9.864 10.503 10C10.503 10.136 10.453 10.254 10.354 10.354C10.254 10.453 10.136 10.503 10 10.503C9.864 10.503 9.746 10.453 9.646 10.354L8.146 8.854C8.099 8.876 8.05 8.897 8 8.914L8 10.5C8 10.641 7.952 10.759 7.856 10.856C7.759 10.952 7.641 11 7.5 11C7.359 11 7.241 10.952 7.144 10.856C7.048 10.759 7 10.641 7 10.5L7 8.914C6.95 8.897 6.901 8.876 6.854 8.854L5.354 10.354C5.256 10.451 5.138 10.5 5 10.5C4.862 10.5 4.744 10.451 4.646 10.354C4.547 10.254 4.497 10.136 4.497 10C4.497 9.864 4.547 9.746 4.646 9.646L6.146 8.146C6.124 8.099 6.103 8.05 6.086 8L4.5 8C4.359 8 4.241 7.952 4.144 7.856C4.048 7.759 4 7.641 4 7.5C4 7.359 4.048 7.241 4.144 7.144C4.241 7.048 4.359 7 4.5 7L6.086 7C6.103 6.95 6.124 6.901 6.146 6.854L4.646 5.354C4.547 5.254 4.497 5.136 4.497 5C4.497 4.864 4.547 4.746 4.646 4.646C4.746 4.547 4.864 4.497 5 4.497C5.136 4.497 5.254 4.547 5.354 4.646L6.854 6.146C6.901 6.124 6.95 6.103 7 6.086L7 4.5C7 4.359 7.048 4.241 7.144 4.144C7.241 4.048 7.359 4 7.5 4C7.641 4 7.759 4.048 7.856 4.144C7.952 4.241 8 4.359 8 4.5L8 6.086C8.05 6.103 8.099 6.124 8.146 6.146L9.646 4.646C9.746 4.547 9.864 4.497 10 4.497C10.136 4.497 10.254 4.547 10.354 4.646C10.451 4.744 10.5 4.862 10.5 5C10.5 5.138 10.451 5.256 10.354 5.354L8.854 6.854Z'/%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='M12.528 10.763C12.243 11.414 11.835 12.024 11.302 12.592C10.825 13.101 10.259 13.565 9.605 13.984C9.015 14.362 8.375 14.689 7.686 14.964C7.562 15.014 7.438 15.014 7.314 14.964C6.625 14.689 5.985 14.362 5.395 13.984C4.741 13.565 4.175 13.101 3.698 12.592C3.165 12.024 2.757 11.414 2.472 10.763C2.157 10.044 2 9.29 2 8.5L2 3.5C2 3.359 2.048 3.241 2.144 3.144C2.241 3.048 2.359 3 2.5 3C3.471 3 4.307 2.865 5.008 2.596C5.754 2.309 6.467 1.826 7.146 1.146C7.244 1.049 7.362 1 7.5 1C7.638 1 7.756 1.049 7.854 1.146C8.533 1.826 9.246 2.309 9.992 2.596C10.693 2.865 11.529 3 12.5 3C12.641 3 12.759 3.048 12.856 3.144C12.952 3.241 13 3.359 13 3.5L13 8.5C13 9.29 12.843 10.044 12.528 10.763ZM4.427 11.908C4.848 12.357 5.35 12.768 5.934 13.141C6.418 13.451 6.94 13.724 7.5 13.96C8.06 13.724 8.582 13.451 9.066 13.141C9.65 12.768 10.152 12.357 10.573 11.908C11.524 10.893 12 9.757 12 8.5L12 3.989C11.111 3.947 10.322 3.794 9.633 3.529C8.886 3.242 8.175 2.795 7.5 2.189C6.825 2.795 6.114 3.242 5.367 3.529C4.678 3.794 3.889 3.947 3 3.989L3 8.5C3 9.757 3.476 10.893 4.427 11.908ZM8.854 6.854C8.876 6.901 8.897 6.95 8.914 7L10.5 7C10.641 7 10.759 7.048 10.856 7.144C10.952 7.241 11 7.359 11 7.5C11 7.641 10.952 7.759 10.856 7.856C10.759 7.952 10.641 8 10.5 8L8.914 8C8.897 8.05 8.876 8.099 8.854 8.146L10.354 9.646C10.453 9.746 10.503 9.864 10.503 10C10.503 10.136 10.453 10.254 10.354 10.354C10.254 10.453 10.136 10.503 10 10.503C9.864 10.503 9.746 10.453 9.646 10.354L8.146 8.854C8.099 8.876 8.05 8.897 8 8.914L8 10.5C8 10.641 7.952 10.759 7.856 10.856C7.759 10.952 7.641 11 7.5 11C7.359 11 7.241 10.952 7.144 10.856C7.048 10.759 7 10.641 7 10.5L7 8.914C6.95 8.897 6.901 8.876 6.854 8.854L5.354 10.354C5.256 10.451 5.138 10.5 5 10.5C4.862 10.5 4.744 10.451 4.646 10.354C4.547 10.254 4.497 10.136 4.497 10C4.497 9.864 4.547 9.746 4.646 9.646L6.146 8.146C6.124 8.099 6.103 8.05 6.086 8L4.5 8C4.359 8 4.241 7.952 4.144 7.856C4.048 7.759 4 7.641 4 7.5C4 7.359 4.048 7.241 4.144 7.144C4.241 7.048 4.359 7 4.5 7L6.086 7C6.103 6.95 6.124 6.901 6.146 6.854L4.646 5.354C4.547 5.254 4.497 5.136 4.497 5C4.497 4.864 4.547 4.746 4.646 4.646C4.746 4.547 4.864 4.497 5 4.497C5.136 4.497 5.254 4.547 5.354 4.646L6.854 6.146C6.901 6.124 6.95 6.103 7 6.086L7 4.5C7 4.359 7.048 4.241 7.144 4.144C7.241 4.048 7.359 4 7.5 4C7.641 4 7.759 4.048 7.856 4.144C7.952 4.241 8 4.359 8 4.5L8 6.086C8.05 6.103 8.099 6.124 8.146 6.146L9.646 4.646C9.746 4.547 9.864 4.497 10 4.497C10.136 4.497 10.254 4.547 10.354 4.646C10.451 4.744 10.5 4.862 10.5 5C10.5 5.138 10.451 5.256 10.354 5.354L8.854 6.854Z'/%3E%3C/svg%3E
```

### Sprite

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

### SwiftUI

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

struct ShieldVirusIcon: Shape {
    func path(in rect: CGRect) -> Path {
        var p = Path()
        p.move(to: CGPoint(x: 12.528, y: 10.763))
        p.addCurve(to: CGPoint(x: 11.302, y: 12.592), control1: CGPoint(x: 12.243, y: 11.414), control2: CGPoint(x: 11.835, y: 12.024))
        p.addCurve(to: CGPoint(x: 9.605, y: 13.984), control1: CGPoint(x: 10.825, y: 13.101), control2: CGPoint(x: 10.259, y: 13.565))
        p.addCurve(to: CGPoint(x: 7.686, y: 14.964), control1: CGPoint(x: 9.015, y: 14.362), control2: CGPoint(x: 8.375, y: 14.689))
        p.addCurve(to: CGPoint(x: 7.314, y: 14.964), control1: CGPoint(x: 7.562, y: 15.014), control2: CGPoint(x: 7.438, y: 15.014))
        p.addCurve(to: CGPoint(x: 5.395, y: 13.984), control1: CGPoint(x: 6.625, y: 14.689), control2: CGPoint(x: 5.985, y: 14.362))
        p.addCurve(to: CGPoint(x: 3.698, y: 12.592), control1: CGPoint(x: 4.741, y: 13.565), control2: CGPoint(x: 4.175, y: 13.101))
        p.addCurve(to: CGPoint(x: 2.472, y: 10.763), control1: CGPoint(x: 3.165, y: 12.024), control2: CGPoint(x: 2.757, y: 11.414))
        p.addCurve(to: CGPoint(x: 2, y: 8.5), control1: CGPoint(x: 2.157, y: 10.044), control2: CGPoint(x: 2, y: 9.29))
        p.addLine(to: CGPoint(x: 2, y: 3.5))
        p.addCurve(to: CGPoint(x: 2.144, y: 3.144), control1: CGPoint(x: 2, y: 3.359), control2: CGPoint(x: 2.048, y: 3.241))
        p.addCurve(to: CGPoint(x: 2.5, y: 3), control1: CGPoint(x: 2.241, y: 3.048), control2: CGPoint(x: 2.359, y: 3))
        p.addCurve(to: CGPoint(x: 5.008, y: 2.596), control1: CGPoint(x: 3.471, y: 3), control2: CGPoint(x: 4.307, y: 2.865))
        p.addCurve(to: CGPoint(x: 7.146, y: 1.146), control1: CGPoint(x: 5.754, y: 2.309), control2: CGPoint(x: 6.467, y: 1.826))
        p.addCurve(to: CGPoint(x: 7.5, y: 1), control1: CGPoint(x: 7.244, y: 1.049), control2: CGPoint(x: 7.362, y: 1))
        p.addCurve(to: CGPoint(x: 7.854, y: 1.146), control1: CGPoint(x: 7.638, y: 1), control2: CGPoint(x: 7.756, y: 1.049))
        p.addCurve(to: CGPoint(x: 9.992, y: 2.596), control1: CGPoint(x: 8.533, y: 1.826), control2: CGPoint(x: 9.246, y: 2.309))
        p.addCurve(to: CGPoint(x: 12.5, y: 3), control1: CGPoint(x: 10.693, y: 2.865), control2: CGPoint(x: 11.529, y: 3))
        p.addCurve(to: CGPoint(x: 12.856, y: 3.144), control1: CGPoint(x: 12.641, y: 3), control2: CGPoint(x: 12.759, y: 3.048))
        p.addCurve(to: CGPoint(x: 13, y: 3.5), control1: CGPoint(x: 12.952, y: 3.241), control2: CGPoint(x: 13, y: 3.359))
        p.addLine(to: CGPoint(x: 13, y: 8.5))
        p.addCurve(to: CGPoint(x: 12.528, y: 10.763), control1: CGPoint(x: 13, y: 9.29), control2: CGPoint(x: 12.843, y: 10.044))
        p.closeSubpath()
        p.move(to: CGPoint(x: 4.427, y: 11.908))
        p.addCurve(to: CGPoint(x: 5.934, y: 13.141), control1: CGPoint(x: 4.848, y: 12.357), control2: CGPoint(x: 5.35, y: 12.768))
        p.addCurve(to: CGPoint(x: 7.5, y: 13.96), control1: CGPoint(x: 6.418, y: 13.451), control2: CGPoint(x: 6.94, y: 13.724))
        p.addCurve(to: CGPoint(x: 9.066, y: 13.141), control1: CGPoint(x: 8.06, y: 13.724), control2: CGPoint(x: 8.582, y: 13.451))
        p.addCurve(to: CGPoint(x: 10.573, y: 11.908), control1: CGPoint(x: 9.65, y: 12.768), control2: CGPoint(x: 10.152, y: 12.357))
        p.addCurve(to: CGPoint(x: 12, y: 8.5), control1: CGPoint(x: 11.524, y: 10.893), control2: CGPoint(x: 12, y: 9.757))
        p.addLine(to: CGPoint(x: 12, y: 3.989))
        p.addCurve(to: CGPoint(x: 9.633, y: 3.529), control1: CGPoint(x: 11.111, y: 3.947), control2: CGPoint(x: 10.322, y: 3.794))
        p.addCurve(to: CGPoint(x: 7.5, y: 2.189), control1: CGPoint(x: 8.886, y: 3.242), control2: CGPoint(x: 8.175, y: 2.795))
        p.addCurve(to: CGPoint(x: 5.367, y: 3.529), control1: CGPoint(x: 6.825, y: 2.795), control2: CGPoint(x: 6.114, y: 3.242))
        p.addCurve(to: CGPoint(x: 3, y: 3.989), control1: CGPoint(x: 4.678, y: 3.794), control2: CGPoint(x: 3.889, y: 3.947))
        p.addLine(to: CGPoint(x: 3, y: 8.5))
        p.addCurve(to: CGPoint(x: 4.427, y: 11.908), control1: CGPoint(x: 3, y: 9.757), control2: CGPoint(x: 3.476, y: 10.893))
        p.closeSubpath()
        p.move(to: CGPoint(x: 8.854, y: 6.854))
        p.addCurve(to: CGPoint(x: 8.914, y: 7), control1: CGPoint(x: 8.876, y: 6.901), control2: CGPoint(x: 8.897, y: 6.95))
        p.addLine(to: CGPoint(x: 10.5, y: 7))
        p.addCurve(to: CGPoint(x: 10.856, y: 7.144), control1: CGPoint(x: 10.641, y: 7), control2: CGPoint(x: 10.759, y: 7.048))
        p.addCurve(to: CGPoint(x: 11, y: 7.5), control1: CGPoint(x: 10.952, y: 7.241), control2: CGPoint(x: 11, y: 7.359))
        p.addCurve(to: CGPoint(x: 10.856, y: 7.856), control1: CGPoint(x: 11, y: 7.641), control2: CGPoint(x: 10.952, y: 7.759))
        p.addCurve(to: CGPoint(x: 10.5, y: 8), control1: CGPoint(x: 10.759, y: 7.952), control2: CGPoint(x: 10.641, y: 8))
        p.addLine(to: CGPoint(x: 8.914, y: 8))
        p.addCurve(to: CGPoint(x: 8.854, y: 8.146), control1: CGPoint(x: 8.897, y: 8.05), control2: CGPoint(x: 8.876, y: 8.099))
        p.addLine(to: CGPoint(x: 10.354, y: 9.646))
        p.addCurve(to: CGPoint(x: 10.503, y: 10), control1: CGPoint(x: 10.453, y: 9.746), control2: CGPoint(x: 10.503, y: 9.864))
        p.addCurve(to: CGPoint(x: 10.354, y: 10.354), control1: CGPoint(x: 10.503, y: 10.136), control2: CGPoint(x: 10.453, y: 10.254))
        p.addCurve(to: CGPoint(x: 10, y: 10.503), control1: CGPoint(x: 10.254, y: 10.453), control2: CGPoint(x: 10.136, y: 10.503))
        p.addCurve(to: CGPoint(x: 9.646, y: 10.354), control1: CGPoint(x: 9.864, y: 10.503), control2: CGPoint(x: 9.746, y: 10.453))
        p.addLine(to: CGPoint(x: 8.146, y: 8.854))
        p.addCurve(to: CGPoint(x: 8, y: 8.914), control1: CGPoint(x: 8.099, y: 8.876), control2: CGPoint(x: 8.05, y: 8.897))
        p.addLine(to: CGPoint(x: 8, y: 10.5))
        p.addCurve(to: CGPoint(x: 7.856, y: 10.856), control1: CGPoint(x: 8, y: 10.641), control2: CGPoint(x: 7.952, y: 10.759))
        p.addCurve(to: CGPoint(x: 7.5, y: 11), control1: CGPoint(x: 7.759, y: 10.952), control2: CGPoint(x: 7.641, y: 11))
        p.addCurve(to: CGPoint(x: 7.144, y: 10.856), control1: CGPoint(x: 7.359, y: 11), control2: CGPoint(x: 7.241, y: 10.952))
        p.addCurve(to: CGPoint(x: 7, y: 10.5), control1: CGPoint(x: 7.048, y: 10.759), control2: CGPoint(x: 7, y: 10.641))
        p.addLine(to: CGPoint(x: 7, y: 8.914))
        p.addCurve(to: CGPoint(x: 6.854, y: 8.854), control1: CGPoint(x: 6.95, y: 8.897), control2: CGPoint(x: 6.901, y: 8.876))
        p.addLine(to: CGPoint(x: 5.354, y: 10.354))
        p.addCurve(to: CGPoint(x: 5, y: 10.5), control1: CGPoint(x: 5.256, y: 10.451), control2: CGPoint(x: 5.138, y: 10.5))
        p.addCurve(to: CGPoint(x: 4.646, y: 10.354), control1: CGPoint(x: 4.862, y: 10.5), control2: CGPoint(x: 4.744, y: 10.451))
        p.addCurve(to: CGPoint(x: 4.497, y: 10), control1: CGPoint(x: 4.547, y: 10.254), control2: CGPoint(x: 4.497, y: 10.136))
        p.addCurve(to: CGPoint(x: 4.646, y: 9.646), control1: CGPoint(x: 4.497, y: 9.864), control2: CGPoint(x: 4.547, y: 9.746))
        p.addLine(to: CGPoint(x: 6.146, y: 8.146))
        p.addCurve(to: CGPoint(x: 6.086, y: 8), control1: CGPoint(x: 6.124, y: 8.099), control2: CGPoint(x: 6.103, y: 8.05))
        p.addLine(to: CGPoint(x: 4.5, y: 8))
        p.addCurve(to: CGPoint(x: 4.144, y: 7.856), control1: CGPoint(x: 4.359, y: 8), control2: CGPoint(x: 4.241, y: 7.952))
        p.addCurve(to: CGPoint(x: 4, y: 7.5), control1: CGPoint(x: 4.048, y: 7.759), control2: CGPoint(x: 4, y: 7.641))
        p.addCurve(to: CGPoint(x: 4.144, y: 7.144), control1: CGPoint(x: 4, y: 7.359), control2: CGPoint(x: 4.048, y: 7.241))
        p.addCurve(to: CGPoint(x: 4.5, y: 7), control1: CGPoint(x: 4.241, y: 7.048), control2: CGPoint(x: 4.359, y: 7))
        p.addLine(to: CGPoint(x: 6.086, y: 7))
        p.addCurve(to: CGPoint(x: 6.146, y: 6.854), control1: CGPoint(x: 6.103, y: 6.95), control2: CGPoint(x: 6.124, y: 6.901))
        p.addLine(to: CGPoint(x: 4.646, y: 5.354))
        p.addCurve(to: CGPoint(x: 4.497, y: 5), control1: CGPoint(x: 4.547, y: 5.254), control2: CGPoint(x: 4.497, y: 5.136))
        p.addCurve(to: CGPoint(x: 4.646, y: 4.646), control1: CGPoint(x: 4.497, y: 4.864), control2: CGPoint(x: 4.547, y: 4.746))
        p.addCurve(to: CGPoint(x: 5, y: 4.497), control1: CGPoint(x: 4.746, y: 4.547), control2: CGPoint(x: 4.864, y: 4.497))
        p.addCurve(to: CGPoint(x: 5.354, y: 4.646), control1: CGPoint(x: 5.136, y: 4.497), control2: CGPoint(x: 5.254, y: 4.547))
        p.addLine(to: CGPoint(x: 6.854, y: 6.146))
        p.addCurve(to: CGPoint(x: 7, y: 6.086), control1: CGPoint(x: 6.901, y: 6.124), control2: CGPoint(x: 6.95, y: 6.103))
        p.addLine(to: CGPoint(x: 7, y: 4.5))
        p.addCurve(to: CGPoint(x: 7.144, y: 4.144), control1: CGPoint(x: 7, y: 4.359), control2: CGPoint(x: 7.048, y: 4.241))
        p.addCurve(to: CGPoint(x: 7.5, y: 4), control1: CGPoint(x: 7.241, y: 4.048), control2: CGPoint(x: 7.359, y: 4))
        p.addCurve(to: CGPoint(x: 7.856, y: 4.144), control1: CGPoint(x: 7.641, y: 4), control2: CGPoint(x: 7.759, y: 4.048))
        p.addCurve(to: CGPoint(x: 8, y: 4.5), control1: CGPoint(x: 7.952, y: 4.241), control2: CGPoint(x: 8, y: 4.359))
        p.addLine(to: CGPoint(x: 8, y: 6.086))
        p.addCurve(to: CGPoint(x: 8.146, y: 6.146), control1: CGPoint(x: 8.05, y: 6.103), control2: CGPoint(x: 8.099, y: 6.124))
        p.addLine(to: CGPoint(x: 9.646, y: 4.646))
        p.addCurve(to: CGPoint(x: 10, y: 4.497), control1: CGPoint(x: 9.746, y: 4.547), control2: CGPoint(x: 9.864, y: 4.497))
        p.addCurve(to: CGPoint(x: 10.354, y: 4.646), control1: CGPoint(x: 10.136, y: 4.497), control2: CGPoint(x: 10.254, y: 4.547))
        p.addCurve(to: CGPoint(x: 10.5, y: 5), control1: CGPoint(x: 10.451, y: 4.744), control2: CGPoint(x: 10.5, y: 4.862))
        p.addCurve(to: CGPoint(x: 10.354, y: 5.354), control1: CGPoint(x: 10.5, y: 5.138), control2: CGPoint(x: 10.451, y: 5.256))
        p.addLine(to: CGPoint(x: 8.854, y: 6.854))
        p.closeSubpath()
        return p.applying(CGAffineTransform(scaleX: rect.width / 16, y: rect.height / 16))
    }
}

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

### Compose

```kotlin
// Gentleface "shield-virus" (line-round), MIT. https://gentleface.com/icons/shield-virus
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 ShieldVirusIcon: ImageVector by lazy {
    ImageVector.Builder(
        name = "shield-virus", defaultWidth = 16.dp, defaultHeight = 16.dp,
        viewportWidth = 16f, viewportHeight = 16f,
    ).addPath(
        pathData = addPathNodes("M12.528 10.763C12.243 11.414 11.835 12.024 11.302 12.592C10.825 13.101 10.259 13.565 9.605 13.984C9.015 14.362 8.375 14.689 7.686 14.964C7.562 15.014 7.438 15.014 7.314 14.964C6.625 14.689 5.985 14.362 5.395 13.984C4.741 13.565 4.175 13.101 3.698 12.592C3.165 12.024 2.757 11.414 2.472 10.763C2.157 10.044 2 9.29 2 8.5L2 3.5C2 3.359 2.048 3.241 2.144 3.144C2.241 3.048 2.359 3 2.5 3C3.471 3 4.307 2.865 5.008 2.596C5.754 2.309 6.467 1.826 7.146 1.146C7.244 1.049 7.362 1 7.5 1C7.638 1 7.756 1.049 7.854 1.146C8.533 1.826 9.246 2.309 9.992 2.596C10.693 2.865 11.529 3 12.5 3C12.641 3 12.759 3.048 12.856 3.144C12.952 3.241 13 3.359 13 3.5L13 8.5C13 9.29 12.843 10.044 12.528 10.763ZM4.427 11.908C4.848 12.357 5.35 12.768 5.934 13.141C6.418 13.451 6.94 13.724 7.5 13.96C8.06 13.724 8.582 13.451 9.066 13.141C9.65 12.768 10.152 12.357 10.573 11.908C11.524 10.893 12 9.757 12 8.5L12 3.989C11.111 3.947 10.322 3.794 9.633 3.529C8.886 3.242 8.175 2.795 7.5 2.189C6.825 2.795 6.114 3.242 5.367 3.529C4.678 3.794 3.889 3.947 3 3.989L3 8.5C3 9.757 3.476 10.893 4.427 11.908ZM8.854 6.854C8.876 6.901 8.897 6.95 8.914 7L10.5 7C10.641 7 10.759 7.048 10.856 7.144C10.952 7.241 11 7.359 11 7.5C11 7.641 10.952 7.759 10.856 7.856C10.759 7.952 10.641 8 10.5 8L8.914 8C8.897 8.05 8.876 8.099 8.854 8.146L10.354 9.646C10.453 9.746 10.503 9.864 10.503 10C10.503 10.136 10.453 10.254 10.354 10.354C10.254 10.453 10.136 10.503 10 10.503C9.864 10.503 9.746 10.453 9.646 10.354L8.146 8.854C8.099 8.876 8.05 8.897 8 8.914L8 10.5C8 10.641 7.952 10.759 7.856 10.856C7.759 10.952 7.641 11 7.5 11C7.359 11 7.241 10.952 7.144 10.856C7.048 10.759 7 10.641 7 10.5L7 8.914C6.95 8.897 6.901 8.876 6.854 8.854L5.354 10.354C5.256 10.451 5.138 10.5 5 10.5C4.862 10.5 4.744 10.451 4.646 10.354C4.547 10.254 4.497 10.136 4.497 10C4.497 9.864 4.547 9.746 4.646 9.646L6.146 8.146C6.124 8.099 6.103 8.05 6.086 8L4.5 8C4.359 8 4.241 7.952 4.144 7.856C4.048 7.759 4 7.641 4 7.5C4 7.359 4.048 7.241 4.144 7.144C4.241 7.048 4.359 7 4.5 7L6.086 7C6.103 6.95 6.124 6.901 6.146 6.854L4.646 5.354C4.547 5.254 4.497 5.136 4.497 5C4.497 4.864 4.547 4.746 4.646 4.646C4.746 4.547 4.864 4.497 5 4.497C5.136 4.497 5.254 4.547 5.354 4.646L6.854 6.146C6.901 6.124 6.95 6.103 7 6.086L7 4.5C7 4.359 7.048 4.241 7.144 4.144C7.241 4.048 7.359 4 7.5 4C7.641 4 7.759 4.048 7.856 4.144C7.952 4.241 8 4.359 8 4.5L8 6.086C8.05 6.103 8.099 6.124 8.146 6.146L9.646 4.646C9.746 4.547 9.864 4.497 10 4.497C10.136 4.497 10.254 4.547 10.354 4.646C10.451 4.744 10.5 4.862 10.5 5C10.5 5.138 10.451 5.256 10.354 5.354L8.854 6.854Z"),
        fill = SolidColor(Color.Black),
    ).build()
}

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

### Android XML

```xml
<!-- res/drawable/ic_shield_virus.xml · Gentleface "shield-virus" (line-round), MIT. https://gentleface.com/icons/shield-virus -->
<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="M12.528 10.763C12.243 11.414 11.835 12.024 11.302 12.592C10.825 13.101 10.259 13.565 9.605 13.984C9.015 14.362 8.375 14.689 7.686 14.964C7.562 15.014 7.438 15.014 7.314 14.964C6.625 14.689 5.985 14.362 5.395 13.984C4.741 13.565 4.175 13.101 3.698 12.592C3.165 12.024 2.757 11.414 2.472 10.763C2.157 10.044 2 9.29 2 8.5L2 3.5C2 3.359 2.048 3.241 2.144 3.144C2.241 3.048 2.359 3 2.5 3C3.471 3 4.307 2.865 5.008 2.596C5.754 2.309 6.467 1.826 7.146 1.146C7.244 1.049 7.362 1 7.5 1C7.638 1 7.756 1.049 7.854 1.146C8.533 1.826 9.246 2.309 9.992 2.596C10.693 2.865 11.529 3 12.5 3C12.641 3 12.759 3.048 12.856 3.144C12.952 3.241 13 3.359 13 3.5L13 8.5C13 9.29 12.843 10.044 12.528 10.763ZM4.427 11.908C4.848 12.357 5.35 12.768 5.934 13.141C6.418 13.451 6.94 13.724 7.5 13.96C8.06 13.724 8.582 13.451 9.066 13.141C9.65 12.768 10.152 12.357 10.573 11.908C11.524 10.893 12 9.757 12 8.5L12 3.989C11.111 3.947 10.322 3.794 9.633 3.529C8.886 3.242 8.175 2.795 7.5 2.189C6.825 2.795 6.114 3.242 5.367 3.529C4.678 3.794 3.889 3.947 3 3.989L3 8.5C3 9.757 3.476 10.893 4.427 11.908ZM8.854 6.854C8.876 6.901 8.897 6.95 8.914 7L10.5 7C10.641 7 10.759 7.048 10.856 7.144C10.952 7.241 11 7.359 11 7.5C11 7.641 10.952 7.759 10.856 7.856C10.759 7.952 10.641 8 10.5 8L8.914 8C8.897 8.05 8.876 8.099 8.854 8.146L10.354 9.646C10.453 9.746 10.503 9.864 10.503 10C10.503 10.136 10.453 10.254 10.354 10.354C10.254 10.453 10.136 10.503 10 10.503C9.864 10.503 9.746 10.453 9.646 10.354L8.146 8.854C8.099 8.876 8.05 8.897 8 8.914L8 10.5C8 10.641 7.952 10.759 7.856 10.856C7.759 10.952 7.641 11 7.5 11C7.359 11 7.241 10.952 7.144 10.856C7.048 10.759 7 10.641 7 10.5L7 8.914C6.95 8.897 6.901 8.876 6.854 8.854L5.354 10.354C5.256 10.451 5.138 10.5 5 10.5C4.862 10.5 4.744 10.451 4.646 10.354C4.547 10.254 4.497 10.136 4.497 10C4.497 9.864 4.547 9.746 4.646 9.646L6.146 8.146C6.124 8.099 6.103 8.05 6.086 8L4.5 8C4.359 8 4.241 7.952 4.144 7.856C4.048 7.759 4 7.641 4 7.5C4 7.359 4.048 7.241 4.144 7.144C4.241 7.048 4.359 7 4.5 7L6.086 7C6.103 6.95 6.124 6.901 6.146 6.854L4.646 5.354C4.547 5.254 4.497 5.136 4.497 5C4.497 4.864 4.547 4.746 4.646 4.646C4.746 4.547 4.864 4.497 5 4.497C5.136 4.497 5.254 4.547 5.354 4.646L6.854 6.146C6.901 6.124 6.95 6.103 7 6.086L7 4.5C7 4.359 7.048 4.241 7.144 4.144C7.241 4.048 7.359 4 7.5 4C7.641 4 7.759 4.048 7.856 4.144C7.952 4.241 8 4.359 8 4.5L8 6.086C8.05 6.103 8.099 6.124 8.146 6.146L9.646 4.646C9.746 4.547 9.864 4.497 10 4.497C10.136 4.497 10.254 4.547 10.354 4.646C10.451 4.744 10.5 4.862 10.5 5C10.5 5.138 10.451 5.256 10.354 5.354L8.854 6.854Z"/>
</vector>
```

### Flutter

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

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

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

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

  @override
  void paint(Canvas canvas, Size size) {
    canvas.scale(size.width / 16, size.height / 16);
    final p = Path()
      ..moveTo(12.528, 10.763)
      ..cubicTo(12.243, 11.414, 11.835, 12.024, 11.302, 12.592)
      ..cubicTo(10.825, 13.101, 10.259, 13.565, 9.605, 13.984)
      ..cubicTo(9.015, 14.362, 8.375, 14.689, 7.686, 14.964)
      ..cubicTo(7.562, 15.014, 7.438, 15.014, 7.314, 14.964)
      ..cubicTo(6.625, 14.689, 5.985, 14.362, 5.395, 13.984)
      ..cubicTo(4.741, 13.565, 4.175, 13.101, 3.698, 12.592)
      ..cubicTo(3.165, 12.024, 2.757, 11.414, 2.472, 10.763)
      ..cubicTo(2.157, 10.044, 2, 9.29, 2, 8.5)
      ..lineTo(2, 3.5)
      ..cubicTo(2, 3.359, 2.048, 3.241, 2.144, 3.144)
      ..cubicTo(2.241, 3.048, 2.359, 3, 2.5, 3)
      ..cubicTo(3.471, 3, 4.307, 2.865, 5.008, 2.596)
      ..cubicTo(5.754, 2.309, 6.467, 1.826, 7.146, 1.146)
      ..cubicTo(7.244, 1.049, 7.362, 1, 7.5, 1)
      ..cubicTo(7.638, 1, 7.756, 1.049, 7.854, 1.146)
      ..cubicTo(8.533, 1.826, 9.246, 2.309, 9.992, 2.596)
      ..cubicTo(10.693, 2.865, 11.529, 3, 12.5, 3)
      ..cubicTo(12.641, 3, 12.759, 3.048, 12.856, 3.144)
      ..cubicTo(12.952, 3.241, 13, 3.359, 13, 3.5)
      ..lineTo(13, 8.5)
      ..cubicTo(13, 9.29, 12.843, 10.044, 12.528, 10.763)
      ..close()
      ..moveTo(4.427, 11.908)
      ..cubicTo(4.848, 12.357, 5.35, 12.768, 5.934, 13.141)
      ..cubicTo(6.418, 13.451, 6.94, 13.724, 7.5, 13.96)
      ..cubicTo(8.06, 13.724, 8.582, 13.451, 9.066, 13.141)
      ..cubicTo(9.65, 12.768, 10.152, 12.357, 10.573, 11.908)
      ..cubicTo(11.524, 10.893, 12, 9.757, 12, 8.5)
      ..lineTo(12, 3.989)
      ..cubicTo(11.111, 3.947, 10.322, 3.794, 9.633, 3.529)
      ..cubicTo(8.886, 3.242, 8.175, 2.795, 7.5, 2.189)
      ..cubicTo(6.825, 2.795, 6.114, 3.242, 5.367, 3.529)
      ..cubicTo(4.678, 3.794, 3.889, 3.947, 3, 3.989)
      ..lineTo(3, 8.5)
      ..cubicTo(3, 9.757, 3.476, 10.893, 4.427, 11.908)
      ..close()
      ..moveTo(8.854, 6.854)
      ..cubicTo(8.876, 6.901, 8.897, 6.95, 8.914, 7)
      ..lineTo(10.5, 7)
      ..cubicTo(10.641, 7, 10.759, 7.048, 10.856, 7.144)
      ..cubicTo(10.952, 7.241, 11, 7.359, 11, 7.5)
      ..cubicTo(11, 7.641, 10.952, 7.759, 10.856, 7.856)
      ..cubicTo(10.759, 7.952, 10.641, 8, 10.5, 8)
      ..lineTo(8.914, 8)
      ..cubicTo(8.897, 8.05, 8.876, 8.099, 8.854, 8.146)
      ..lineTo(10.354, 9.646)
      ..cubicTo(10.453, 9.746, 10.503, 9.864, 10.503, 10)
      ..cubicTo(10.503, 10.136, 10.453, 10.254, 10.354, 10.354)
      ..cubicTo(10.254, 10.453, 10.136, 10.503, 10, 10.503)
      ..cubicTo(9.864, 10.503, 9.746, 10.453, 9.646, 10.354)
      ..lineTo(8.146, 8.854)
      ..cubicTo(8.099, 8.876, 8.05, 8.897, 8, 8.914)
      ..lineTo(8, 10.5)
      ..cubicTo(8, 10.641, 7.952, 10.759, 7.856, 10.856)
      ..cubicTo(7.759, 10.952, 7.641, 11, 7.5, 11)
      ..cubicTo(7.359, 11, 7.241, 10.952, 7.144, 10.856)
      ..cubicTo(7.048, 10.759, 7, 10.641, 7, 10.5)
      ..lineTo(7, 8.914)
      ..cubicTo(6.95, 8.897, 6.901, 8.876, 6.854, 8.854)
      ..lineTo(5.354, 10.354)
      ..cubicTo(5.256, 10.451, 5.138, 10.5, 5, 10.5)
      ..cubicTo(4.862, 10.5, 4.744, 10.451, 4.646, 10.354)
      ..cubicTo(4.547, 10.254, 4.497, 10.136, 4.497, 10)
      ..cubicTo(4.497, 9.864, 4.547, 9.746, 4.646, 9.646)
      ..lineTo(6.146, 8.146)
      ..cubicTo(6.124, 8.099, 6.103, 8.05, 6.086, 8)
      ..lineTo(4.5, 8)
      ..cubicTo(4.359, 8, 4.241, 7.952, 4.144, 7.856)
      ..cubicTo(4.048, 7.759, 4, 7.641, 4, 7.5)
      ..cubicTo(4, 7.359, 4.048, 7.241, 4.144, 7.144)
      ..cubicTo(4.241, 7.048, 4.359, 7, 4.5, 7)
      ..lineTo(6.086, 7)
      ..cubicTo(6.103, 6.95, 6.124, 6.901, 6.146, 6.854)
      ..lineTo(4.646, 5.354)
      ..cubicTo(4.547, 5.254, 4.497, 5.136, 4.497, 5)
      ..cubicTo(4.497, 4.864, 4.547, 4.746, 4.646, 4.646)
      ..cubicTo(4.746, 4.547, 4.864, 4.497, 5, 4.497)
      ..cubicTo(5.136, 4.497, 5.254, 4.547, 5.354, 4.646)
      ..lineTo(6.854, 6.146)
      ..cubicTo(6.901, 6.124, 6.95, 6.103, 7, 6.086)
      ..lineTo(7, 4.5)
      ..cubicTo(7, 4.359, 7.048, 4.241, 7.144, 4.144)
      ..cubicTo(7.241, 4.048, 7.359, 4, 7.5, 4)
      ..cubicTo(7.641, 4, 7.759, 4.048, 7.856, 4.144)
      ..cubicTo(7.952, 4.241, 8, 4.359, 8, 4.5)
      ..lineTo(8, 6.086)
      ..cubicTo(8.05, 6.103, 8.099, 6.124, 8.146, 6.146)
      ..lineTo(9.646, 4.646)
      ..cubicTo(9.746, 4.547, 9.864, 4.497, 10, 4.497)
      ..cubicTo(10.136, 4.497, 10.254, 4.547, 10.354, 4.646)
      ..cubicTo(10.451, 4.744, 10.5, 4.862, 10.5, 5)
      ..cubicTo(10.5, 5.138, 10.451, 5.256, 10.354, 5.354)
      ..lineTo(8.854, 6.854)
      ..close();
    canvas.drawPath(p, Paint()..color = color);
  }

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