Skip to content
3DToolBench

Turn text into an STL

Type something. It becomes a solid you can print, cut or drop into a model. You set how tall the letters are and how thick the piece is, both in millimetres, and you see the result before anything is written.

The font is fetched once from this site. Everything after that happens in your browser — what you type is never sent anywhere.

The letters are real outlines, not a picture of text

Every character is drawn from the font’s own outline data and turned into a closed shape, exactly as if you had drawn it yourself and dropped in an SVG. That is literally what happens: the words become a drawing in memory, and the drawing goes through the same engine as any other.

So a letter O comes out with a hole in the middle, an A keeps its triangle, and a lowercase i has a separate dot. None of that is special-cased. It falls out of working out which outlines sit inside which, which is the same thing that gives a washer its bore.

Two measurements, both in millimetres

The capital letter height is measured on an actual capital H in the font you chose, not estimated from the font’s metrics. Type 20 and your capitals are 20 millimetres tall. Round letters like O and G will measure a fraction more, because that is how type is drawn — a circle has to overshoot a flat line to look the same height.

The thickness is how far the letters are pushed out, and it is set in the settings below the 3D view. Three millimetres is a solid keyring or fridge magnet. One millimetre is a stencil or an inlay. Ten is a freestanding word that will not fall over.

Making the letters hold together

A word printed as separate letters is a word that arrives as a pile of letters. If you want one piece, pull the letter spacing negative until the letters overlap — you will see them touch in the 3D view — and they become one connected solid.

Bold fonts help too. Thin strokes at small sizes are fragile in a print and impossible in a laser cut. If a letter looks too delicate on screen it will be worse in real material.

Each letter is its own object

The list under the 3D view shows every letter separately, and you can switch one off or isolate it. That is useful more often than it sounds: printing just the initial, checking one character, or splitting a long word across two plates.

Past a couple of dozen letters they are merged into one object instead, because a list of two hundred rows is not something anybody can use.

About the fonts

Three fonts are offered, all from the Droid family, all free to use and redistribute. They are fetched only when you open this page, so nobody who never uses this tool pays for them.

They cover the Latin alphabets, including the accented letters of Polish, Czech, Turkish, Romanian and the Baltic languages. They do not cover Greek, Cyrillic, Arabic or any East Asian script. If a character is missing you are told which one rather than left with a gap.

If you need a particular font, set your text in the program that has it, convert the text to outlines, save as SVG, and use the SVG to STL converter instead. That is the same path this page takes, with your font instead of ours.

Questions

How thick should the letters be?
For a keyring or a magnet, 3 mm. For a stencil, 1 mm. For a word that stands up on a shelf, 8 to 12 mm. Set it in the thickness box under the 3D view and watch the height figure beside the model.
How do I make the letters join up into one piece?
Make the letter spacing negative until the letters overlap in the 3D view. A bold font joins up sooner because its strokes are wider.
Can I use my own font?
Not directly. Set the text in a program that has your font, convert it to outlines or paths, save it as an SVG, and run that through the SVG to STL converter. The result is identical to what this page produces.
Why is my letter missing?
The font has no outline for that character. A message above the 3D view says which one. These fonts cover the Latin alphabets only.
Can I get something other than STL?
Yes. The box above the 3D view offers every format the engine can write — 3MF if your slicer prefers it, OBJ or GLB for a modelling program, USDZ for an iPhone.
Is anything uploaded?
No. The font is fetched from this site once, and everything after that happens in your browser. What you type is never sent anywhere.

Working from a drawing instead

Where to go next