leave generated .notdef glyph unmapped in cmap #428
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
.notdef glyph represent the absence of a character, so it should not be explicitly mapped in the cmap. Currently we were adding a no-op map from 0x0000 (the NULL character) to glyph index 0 (.notdef) but this is unnecessary.
https://learn.microsoft.com/en-us/typography/opentype/spec/cmap#overview
NULL is for something else entirely. Basically all character codepoints that are not suppoted in a given font (including NULL in the particular case of the test font as well as most font nowadays) get implicitly mapped to glyph id 0, aka ".notdef" glyph.