gizmobench

String Art Pattern Maker

Open a local image, adjust its circular crop and generate a black-thread approximation on a white background. Choose 40 to 300 pins, up to 5,000 lines, line opacity and a diameter from 50 to 1,000 mm. Follow the numbered path, print the tiled A4 pin template at actual size, or save a local project with the retained grayscale image, crop and settings.

Image & cropLocal grayscale source
Your circular crop
Choose a clear subjectHigh contrast and a simple background work best.
Reproducible tie breaking

Identical retained pixels, crop, settings and seed reproduce the path. The seed orders equal-scoring choices.

The retained source has a longest side of at most 1,024 pixels. Generation uses a 192 × 192 crop and stops after two minutes. Images stay on this device.

Thread previewPin 1 at top · clockwise
Your thread approximation appears here

A circular pin layout is shown. Generate from an image to create a real path.
Preview labels are spaced for legibility; the PDF numbers every pin.

Thread pathFollow each endpoint in order

The ordered pin sequence will appear after generation.

Black threads are simulated on a white background. Physical thread thickness and tension can change the result.

Choose an image, set the circular crop, then generate a thread path.

Pins
120
Lines
Not generated
Diameter
300 mm
Step angle
3°

Accuracy. This is a deterministic greedy grayscale approximation on a 192 × 192 crop, with 40 to 300 circular pins and at most 5,000 straight thread lines. The preview does not predict the physical result or structural suitability: thread thickness, colour, material and tension affect the finished piece. Print the tiled template at 100% scale and check its 50 mm reference before using it.

Common questions

How does the string art generator turn a photo into a thread path?
The image is converted to grayscale over a white background. Your crop is sampled to 192 × 192 pixels. Starting at pin 1 at the top of the circle, each step tests a straight line to every other pin and chooses the one that most reduces squared grayscale error. The preview uses the resulting ordered path. A simple subject and strong contrast are easier to approximate than fine detail.
Why are fewer lines generated than the limit I entered?
Automatic stopping ends the path when no next thread improves the grayscale fit. A uniform white crop therefore needs zero dark lines. Turn automatic stopping off to reach the requested line count, up to 5,000, even when more threads make the approximation worse. Processing is also stopped after two minutes and can be cancelled at any time.
How do I print a full-size circular pin template?
Generate a pattern, then choose Print template PDF. The A4 PDF numbers every pin and divides larger templates into pages with 10 mm overlaps and labeled alignment targets. Print every page at 100% scale with fit-to-page turned off, check the printed 50 mm reference, and line up targets with matching IDs. Pin 1 sits at the top and numbering increases clockwise. Labels may extend beyond the selected pin-circle diameter, with connecting lines continued across pages.
Can I save a project and reproduce the same path?
Export project downloads a JSON file containing the retained grayscale source, crop, settings, seed and any generated path. Open that file here to continue. Identical retained pixels, crop, settings and seed reproduce the same path. The seed determines the ordering of equal-scoring choices. The project keeps the reduced grayscale image, not the original full-resolution colour file.
What do line opacity and output diameter change?
Opacity controls how strongly each simulated black thread darkens the white background, from 0.01 to 1, and affects the path chosen by the algorithm. Diameter controls the physical spacing of the printed pin circle, from 50 to 1,000 mm. It does not simulate real thread thickness, tension or material. The screen preview cannot predict the finished physical appearance.
Is my image uploaded, and what happens when I cancel?
Image decoding, crop sampling and generation run locally in your browser. The retained grayscale source has a longest side of at most 1,024 pixels; the full decoded image is released after reduction. Cancel terminates the processing worker and releases its working image memory while keeping the retained source and your settings. Large images can still exceed the browser's decoding memory; reduce their dimensions and reopen them if decoding fails. Nothing is saved between visits unless you export a project.

This is a deterministic greedy grayscale approximation on a 192 × 192 crop, with 40 to 300 circular pins and at most 5,000 straight thread lines. The preview does not predict the physical result or structural suitability: thread thickness, colour, material and tension affect the finished piece. Print the tiled template at 100% scale and check its 50 mm reference before using it.