In FontForge, I cannot delete these 3 glyphs no matter what I try.


The glyph info on each is:

  1. 104 (0x68) U+???? ".notdef"
  2. 105 (0x69) U+???? "glyph1"
  3. 106 (0x6a) U+???? "glyph2"

I keep deleting them (Encoding > Detach & Remove Glyphs), then save the font as a .woff or .woff2 (File > Generate Fonts), but every time I open the new output file the glyphs are still there.

Seems like FontForge is adding them back.

I've spent a few hours going over settings, but I'm at a loss.

2 Answers 2


fontTools has a program specifically designed for this task called subset. Unfortunately I had to learn the hard way that subsetting with FontForge isn't ideal, but it was almost too easy with pyftsubset.

pyftsubset "input.ttf" \
    --flavor="woff" \
    --output-file="output.woff"  \
    --layout-features="[PICK-EM]" \
    --unicodes="[PICK-EM]" \
    --with-zopfli \

Notdef is a fallback glyph that signifies you've typed a character that the font doesn't include. You definitely don't want to remove that glyph, text would display wrongly without it.

I believe FontForge may automatically build one into every font created using it to make sure one is included; certainly another font editor called Glyphs does. You can see discussion of this on this forum.

  • Thanks, yes I understand the purpose of U+0000. I want the glyph gone. Messing around with fontTools now as it seems to be better for subsetting a font.
    – Jeff
    Commented Dec 9, 2021 at 12:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.