Multiface fonts supported in load but not range
- Dominant language
- C++
- Stars
- 248
- Forks
- 67
- PR merge metrics
- No merged PRs in 30d
Description
Fonts with multiple faces are supported by looping over each face and accessing the number of faces once a valid FT_Face object is available. Like we do here:
- looping: https://github.com/mapbox/node-fontnik/blob/35feb88c121abbc6393f5236d7591035a1eb82cb/src/glyphs.cpp#L197
- accessing `ft_face->num_faces`: https://github.com/mapbox/node-fontnik/blob/35feb88c121abbc6393f5236d7591035a1eb82cb/src/glyphs.cpp#L205-L206
But the `num_faces = ft_face->num_faces;` is only done in `LoadAsync` and not `RangeAsync`
/cc @mikemorris
Contributor guide
Research direction
Start in src/glyphs.cpp by comparing LoadAsync, including its loop over faces and access to ft_face->num_faces, with RangeAsync. Update the range path so multiface fonts receive equivalent handling, then verify that range generation works across all faces.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- computer-graphics
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Clearly specified
- Newbie friendliness
- 48/100