Skip to content

Add support for cmap format 12 (Unicode beyond BMP) #157

@manh-dan

Description

@manh-dan

Summary

The library currently does not support cmap format 12, which is required to map Unicode codepoints beyond U+FFFF (e.g., CJK Extension B characters).

Problem

Fonts containing characters outside the Basic Multilingual Plane (BMP), such as 𠮷 (U+20BB7), cannot be correctly mapped to glyphs.

Root Cause

Only cmap format 4 (16-bit) is supported, which limits Unicode support to BMP.

Proposed Solution

  • Implement parsing for cmap format 12
  • Support 32-bit Unicode codepoints
  • Return glyph mappings for codepoints beyond U+FFFF

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions