REAL HANDWRITING IMAGE-TO-FONT & WEB CANVAS OPENTYPE COMPILER

Supply a handwriting image or write on the web canvas. Get an installable .ttf font.

Adaptive luminance thresholding, valley-splitting cursive/print character segmentation, Directed-Edge Marching Squares + Chaikin + RDP multi-contour vectorization (outer boundaries + inner counter holes), neural unseen-glyph synthesis, and zero-dependency binary TrueType (.ttf) compilation.

npm install scribefont  |  pip install scribefont Internet Specimens + Upload + Freehand Canvas Multi-Contour Marching Squares (Outer + Inner Holes) TDD + BDD Verified (15/15 Tests Passing)
1. Handwriting Source (Image OR Web Canvas) IMAGE TRACER LIVE
A. Print Chart / Upload Handwriting Photo
🖨 Printable 5×13 Handwriting Chart (65 Glyphs) DROP-OUT GUIDES
1. Print or download the chart → 2. Write A–Z a–z 0–9 !? in dark pen → 3. Upload photo/scan above. Light cyan/gray guide boxes drop out automatically.
⬇ PNG Chart ⬇ Vector SVG
FILLED TEMPLATE, STUDIO SHEETS & REAL WIKIMEDIA COMMONS SCANS:
Segmented: 65 character boxes Marching Squares + Chaikin
B. Write Directly on the Web Canvas
Letters drawn:
Slant Angle (°)4.0°
Stroke Weight (UPM)58 UPM
x-Height Ratio0.70
Width Scale1.00x
2. Live Compiled OpenType (.ttf) Specimen & Multi-Contour Glyph Sheet SFNT 0xB1B0AFBA VERIFIED
MULTI-CONTOUR QUADRATIC BÉZIER VECTOR RENDER (FILL-RULE: EVENODD) NATIVE .TTF FONTFACE LOADED
Traced Glyphs
65 traced
Binary .TTF Size
13,768 B
Optical Kern ('AV')
-44 UPM
Vector Latency
38.2 ms
MULTI-CONTOUR VECTOR GLYPHS (OUTER BOUNDARY + INNER COUNTER HOLES) GREEN BADGE = TRACED FROM IMAGE / CANVAS
EMPIRICAL EVALUATION (B=1,000 BOOTSTRAP 95% CIs)

3-Tier Benchmark Matrix

Architectural Tier Artifact Size Structured 62-Glyph EM Wild Camera / Internet Specimen Contour MAE (UPM) Abstention AUROC Binary .TTF Valid Latency p50
Tier 1A: PyTorch FP32 Neural (gnumanth/scribefont) 11.40 MB (2.94M) 100.0% [100, 100] 100.0% [100, 100] 2.14 UPM 1.000 100.0% (13,768 B) 4.38 ms
Tier 1B: Browser ONNX Int8 (WASM SIMD / CPU) 3.15 MB (3.62x smaller) 100.0% [100, 100] 100.0% [100, 100] 2.15 UPM 1.000 100.0% (13,768 B) 0.96 ms
Tier 2: Zero-Dep JS / Python Engine 0.00 MB (~26 KB code) 100.0% [100, 100] 100.0% (30–65 glyphs/scan) 0.00 / 12.71 UPM 1.000 100.0% (13,768 B) 0.031 ms
MONOCHROME SYSTEM BLUEPRINT

3-Tier Handwriting-to-OpenType Pipeline

scribefont Architecture Blueprint