Emoji font

Is there a way to implement emoji font (Unicode) as SpriteFont? When I try to implement NotoColorEmoji and add region for single emoji I got error during .spritefont compilation. I see on git that Mono parses it from UTF-32, so I tried using HEX or DEC codes for UTF-32, but it still failed :confused: Do I do something wrong or maybe Mono simple doesn’t support such big subsets as emoji? :thinking:

    <CharacterRegions>
      <CharacterRegion>
        <Start>&#32;</Start>
        <End>&#126;</End>
      </CharacterRegion>
      <CharacterRegion>
        <Start>&#x1f600;</Start>
        <End>&#x1f600;</End>
      </CharacterRegion>
    </CharacterRegions>

Importer ‘FontDescriptionImporter’ had unexpected failure!
System.FormatException: String must be exactly one character long.

SpriteFont does not currently support emoji characters. There is an open issue in the GitHub repo for it and its part of the 3.9 release milestones.

Issue link: SpriteFont does not support emoji characters · Issue #4805 · MonoGame/MonoGame · GitHub

Milestones link: 3.9 Release Milestone · GitHub

4 Likes