ilustra.si

A photo, drawn in ink.

Give it a photo and watch it drawn as a pen illustration, one stroke at a time. There is no model and no server, only geometry running in your browser. Export the SVG and put it on a plotter.

A single travelling-salesman path through the tones.

0:00 / 0:00

Photo

Showing the built-in demo.

Or drop one on the paper, or paste one. Your photo never leaves this device.

Settings

Ink and paper

How it works

No model, no server. Each style is a small piece of computational geometry that runs in a worker thread in your browser, and the same photo, settings and seed always give the same drawing.

Stipple
Dots are scattered with more of them where the photo is dark, then each dot moves to the tone-weighted centre of its Voronoi cell. Repeat that a few times (Lloyd relaxation) and the dots spread out evenly without losing the shading.
One line
The stipple dots become stops on a travelling-salesman tour, built by always walking to the nearest unvisited dot. Then 2-opt swaps pairs of edges whenever that makes the route shorter, which untangles most of the crossings.
Hatch
The photo is split into tone thresholds, and each darker threshold adds another layer of parallel lines at a new angle. Lines start and stop where the tone crosses its threshold, with a little wobble so they read as drawn.
Contour
The image gradient points from light to dark, and these lines run perpendicular to it, around shapes, like contours on a map. New lines are seeded at a set distance beside existing ones, so they never crowd, and they spread further apart where the photo is light.
Scribble
One pen wanders from dark patch to dark patch while drawing small loops. Where the photo is darker the loops get bigger and the pen slows down, so more ink lands there.

The SVG is plotter-ready: one path per stroke, no fills, no transforms, ordered to keep pen-up travel short. Open it in the AxiDraw extension for Inkscape, or whatever drives your plotter, and set the scale there. A plain-text summary for crawlers and language models is at /llms.txt.