Pixel & Grid Font Maker
Type pixel letters as # and . grids and get an installable TTF font: merged, dotted or tiled.
How it works
Write each glyph as a small grid of # (ink) and . (empty), with 2–5 for diagonal half cells, any size up to 32 × 32 and with descender rows. Choose merged outlines, round dots or separate squares, proportional or monospace widths and letter spacing, and download a verified TrueType font. Lumina Glyph Lab edits the same text with a live preview.
- Each glyph block starts with its character (or U+XXXX, or space) followed by equal-height rows. # 1 X @ █ are full cells, . 0 _ and spaces are empty, 2–5 are half cells cut along a diagonal (2 top-left, 3 top-right, 4 bottom-right, 5 bottom-left; the Grid Font Builder tiles). Short rows are padded with empty cells.
- The rows above the baseline fill the cap height: one cell is round(700 / rows above the baseline) font units at 1000 units per em. Merged cells are traced into combined outlines (shared edges cancel, touching corners stay separate loops); dots are eight-point quadratic B-spline circles; separate squares are inset by half the remaining gap.
- Proportional widths trim empty columns at both sides; monospace keeps the whole grid. Letter spacing adds half the chosen cells on each side. Without a space glyph the space is half the grid height wide (or the full grid in monospace).
- The font is written and read back by the Lumina TrueType writer (same checks as the lumina-font-builder tool).
Pixel fonts look crisp when the font size is a multiple of the cell size on screen. The fonts have no hinting or embedded bitmaps; kerning and ligatures are not generated.
Sources
Part of Lumina
-
Lumina Photo editor & image toolkit
Bring out what you saw. A free photo studio, right in your browser.
Related tools
- TrueType & Variable Font Builder – Turn glyph outlines or a grid font into a verified TTF, including variable weight fonts.
- Handwriting to Font – Print a template, write your letters, upload the photo and get your handwriting as a TTF font.
- Webfont Subsetter (WOFF & TTF) – Shrink a font to the characters your site uses and get a WOFF file with its CSS unicode-range.
How to use the Pixel & Grid Font Maker
Type pixel letters as grids of # and . and get an installable TTF font with merged outlines, round dots or separate squares.
What it is for
Pixel fonts give games, retro posters, badges and dot-matrix displays their look. Drawing them in a font editor is slow; typing them as small text grids is fast. Each glyph is its character on one line followed by rows of # for ink and . for empty cells, and a blank line separates glyphs. The tool turns the grids into a TrueType font you can install or use on a website.
It also suits the diagonal "brick" style: 2, 3, 4 and 5 are half cells cut along a diagonal (top-left, top-right, bottom-right and bottom-left filled), the same tiles as Lumina's Grid Font Builder. Lumina's Type Lab → Glyph Lab edits the same text with a live preview.
Worked example
We typed a tiny 4 × 5 font with H, I and Ä (written as U+00C4 on the first line) and chose Separate squares, Monospace, Letter spacing 0.5 and Dot or square size 0.7.
- TinyFive-Regular.ttf, 1332 bytes, 3 glyphs on a 4 × 5 grid.
- Cell size: 140 font units — the five rows above the baseline fill the cap height of 700 units.
- Every glyph is 630 units wide: four columns of 140 plus half a cell of spacing on each side.
- The H has 12 ink cells and therefore 12 separate squares; every read-back check passed.
The first built-in example, a 5 × 7 alphabet with two descender rows, gives 100-unit cells; in Merged cells style the I becomes one outline and g, p, y hang 200 units below the baseline.
How to read the result
- Glyphs lists each character with its glyph name, the number of ink cells, the number of outlines and the advance width.
- Contours shows the cell style at work: merged cells join touching cells into one outline, while dots and separate squares give one contour per cell (up to 64 per glyph).
- Read-back checks confirm that the written file maps every character and reproduces every outline.
- Download the font project opens in Lumina Font Foundry, where you can add kerning, more glyphs or a Bold master.
Tips and common mistakes
- Every glyph needs the same number of rows. Shorter rows are padded with empty cells on the right, but a missing row is an error ("Every glyph needs the same number of rows").
- Keep empty rows as
.— a row of spaces looks like a blank line and splits the glyph. - Rows below the baseline sets the descender. With 9 rows and 2 below the baseline, row 7 sits on the baseline.
- Proportional trims empty columns at both sides of each glyph; Monospace keeps the full grid width, which suits terminals and scoreboards.
- Without a
spaceglyph, the space is half the grid height wide (or the full grid in monospace). - Pixel fonts look sharpest at sizes that are whole multiples of the cell size on screen.
FAQ
Can I use characters outside the keyboard?
Yes. Write U+00C4 or U+20AC on the glyph's first line instead of the character itself, or space for the space.
What do dots look like up close?
Each dot is an eight-point quadratic curve; its implied on-curve points lie exactly on a circle with the chosen diameter, so dots stay round at any size.
Is there kerning?
No kerning or ligatures are generated; pixel fonts are usually spaced by the grid. Add pairs in Font Foundry if you need them.
Can I convert my Grid Font Builder project?
Yes. In Glyph Lab, Import Grid Font Builder draft turns your 8 × 8 brick font into this text format, triangles included.
Guide last updated:
For scripts and AI agents
- JSON API:
POST https://luminagridfont.usefulweb.app/api/v1/calculate(same calculation as this page) - Interface description: OpenAPI 3.1 · AI guide: llms.txt
- MCP server (Streamable HTTP):
https://luminagridfont.usefulweb.app/mcp· tool namelumina_grid_font
Example request
curl -s -X POST https://luminagridfont.usefulweb.app/api/v1/calculate \
-H 'content-type: application/json' \
-d '{…see OpenAPI examples…}'