Embroidery file viewer and converter
Open a machine embroidery file (DST, PES, PEC, JEF, EXP, VP3, XXX) and see it stitched — stitch count, colours, trims, jumps, size, whether it fits your hoop, thread per colour and sewing time, a stitch-by-stitch replay — then recolour, rotate, mirror, scale or split long stitches and save it as DST, PES, JEF or EXP.
Added
How to use it
A viewer and converter for machine embroidery files. Drop a file on the page and it is drawn as thread on fabric, colour by colour, with the numbers you want before you hoop up. Change the colours, turn it, and save it in the format your machine reads.
For fabric quantities, binding and the rest of the sewing arithmetic, see the sewing, knitting and crochet calculator.
How to use it
-
Open a design — Open a file… or drop it on the box at the top. It reads Tajima DST, Brother PES (versions 1 to 10 — the stitches come from the PEC block inside, the thread colours from the PES thread list when there is one) and PEC, Janome JEF, Melco EXP, Pfaff and Husqvarna Viking VP3, and Singer XXX. Sample design opens a small three-colour badge to try things on.
-
Look at it. Each stitch is drawn 0.4 mm wide with a dark edge and a highlight, in its thread’s colour, on a fabric colour you choose. Jumps and trims shows moves without a stitch as dashed lines and trims as red crosses; Hoop draws the hoop’s sewing field round the design (green if it fits).
-
Replay sews the design stitch by stitch, from 20 to 5 000 stitches a second; the slider and the ◀ ▶ buttons move to any stitch, and the line under it says which colour is sewing. Show all returns to the finished design. ⬇ PNG saves a picture of it at up to 10 pixels per millimetre.
-
Design lists the stitches, colours and colour changes, trims, jumps, the size in millimetres and inches, the longest stitch, the thread and the sewing time. Set your machine’s speed and how long a colour change takes you.
-
Hoop — choose a brand and hoop (or a custom size). It says whether the design fits, turned 90° if that’s the only way, with the margin left, or by how much it’s too big, and the smallest hoop of that brand that would take it.
-
Threads — stitches, thread and time for each colour. Change a colour with its swatch, or pick a thread from a chart: the Brother 64-colour chart PES files use, or the Janome chart JEF files use (the twelve nearest are offered). Match all moves every colour to its nearest in the chart.
-
Edit — rotate by 90° or any angle, mirror, scale, and split long stitches. Each edit can be undone.
-
Save as DST, PES, JEF or EXP.
What the formats keep
-
DST and EXP have no colours: the machine stops at each colour change and you thread what the design calls for. DST has no trim command either — it is written the usual way, as three short jumps that cancel out, and read back the same way (three or more jumps in a row mean a trim).
-
JEF stores Janome chart numbers and PES version 1 stores Brother’s PEC chart numbers, so each colour is saved as the nearest chart colour; two different colours never end up as the same one.
-
Positions are stored in tenths of a millimetre. A move longer than one record holds (12.1 mm in DST, 12.7 mm in EXP and JEF) is split into jumps. VP3, XXX and PEC can be opened but not saved.
Scaling, and long stitches
Scaling a stitch file moves the needle points but keeps the number of stitches, so a fill made 20 % bigger has gaps and one made 20 % smaller is packed hard enough to break needles. Within ±10 % is usually fine; beyond that the tool warns you, and the real answer is to re-digitise from the artwork.
A DST record moves at most 12.1 mm. Split long stitches turns each stitch longer than the limit you set into jumps along the same line ending in the stitch: the needle doesn’t go down in between, so the thread still lies the whole length, as it would on the machine. Some machines trim after three jumps in a row, so a stitch more than 36 mm long can be cut — check before you sew it.
How the estimates work
-
Top thread for a colour = (total stitch length + 0.8 mm per stitch for the loop through the fabric) × 1.05. Bobbin thread ≈ 40 % of the top. Both are estimates; dense satin uses more than this, light running stitch less.
-
Sewing time = stitches ÷ speed + each colour change (30 s by default) + 3 s a trim + 0.5 s a jump.
-
Size is the box round every stitch and jump, so a jump outside the stitched area counts.
Tests
The file engine is tested in Node: DST’s balanced-ternary records on known values and on every movement from −121 to +121; each writable format written and read back to the same needle points, colour changes and trims (including coordinates off the 0.1 mm grid and moves longer than a record); the PEC colour table and how colours are matched to it; the JEF header and hoop codes; EXP’s command escapes; the hoop fit; splitting long stitches; and the transforms. The readers were also checked against files written by the open-source pyembroidery library (DST, PES versions 1 and 6, PEC, JEF, EXP, VP3, XXX) and its reader against files written here.
Feedback is a gift. Something to improve, a feature to add, or a bug? Tell me.
Runs entirely in your browser; nothing you type leaves this page.