Scan line icon

A free pencil-style scan line icon, drawn by code from 4 polylines and 1 line. Use it as an SVG, a React component, or by name. MIT licensed.

scan-line

01Use it

Use scan-line

One package, four ways in. The icon inherits currentColor and is decorative unless you give it a title. Install it with npm i @matita/icons.

React

import { ScanLine } from '@matita/icons/react';

<ScanLine size={24} />

// or by name
import { SketchIcon } from '@matita/icons/react';
<SketchIcon name="scan-line" />

JavaScript

import { ScanLine, toSvg } from '@matita/icons';

toSvg(ScanLine, { size: 24 });   // SVG string

SVG

<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" width="24" height="24" fill="none" stroke="currentColor" stroke-width="1.6" stroke-linecap="round" stroke-linejoin="round" overflow="visible" class="sketch-icon sketch-icon-scan-line" data-sketch="" aria-hidden="true"><path d="M3.57 8.29Q3.66 5.82 3.4 3.36Q5.97 3.42 8.54 3.53" stroke-width="1.52"/><path d="M15.4 3.46Q17.9 3.48 20.39 3.37Q20.33 5.87 20.34 8.36" stroke-width="1.408"/><path d="M20.46 15.51Q20.28 18.06 20.49 20.61Q18.05 20.33 15.61 20.33" stroke-width="1.504"/><path d="M8.46 20.55Q6.06 20.63 3.67 20.36Q3.54 17.92 3.53 15.48" stroke-width="1.376"/><path d="M6.9 11.93Q12.2 12.38 17.5 12.09" stroke-width="1.68"/></svg>

Pencil variant

import '@matita/icons/pencil.css';
import { ScanLine } from '@matita/icons/react';

<ScanLine size={32} pencil />

The file is icons/scan-line.svg in the package (pencil/scan-line.svg for the pencil variant). Matita 0.2.1.

02How it's drawn

The recipe for scan-line

Scan line is not stored as a drawing. It is a recipe of 4 polylines and 1 line on a 24 by 24 grid, and a small program draws it like a pencil would. The wobble comes from the name, so it always comes out the same.

A · Recipe
P 3.5 8 3.5 3.5 8 3.5;
P 16 3.5 20.5 3.5 20.5 8;
P 20.5 16 20.5 20.5 16 20.5;
P 8 20.5 3.5 20.5 3.5 16;
L 7 12 17 12
B · Plotted
C · Drawn
How it works

03Takes, sizes, pencil

Same icon, every way

Pass a seed for another take of the same recipe. The wobble is capped, so it still reads at 16 px.

seed 0
seed 1
seed 2
seed 3
seed 4

Five seeds of scan-line. Seed 0 is the default.

16 px
20 px
24 px
32 px
48 px
96 px

True pixel sizes.

Ink
Pencil