Current state of Fonts/Emoji/Unicode symbols

I have noticed that emoji don’t draw on macOS platform. What is the current state of text drawing on each platform? What should I expect to work and what are the known issues?

Ran into this issue not too long ago with some math symbols. So long as you use a typeface that supports the symbols you want, you’ll be fine. The default typeface does not have a wide variety of available symbols.

If I use the JUCE Demo and click on the Apple Emoji font I still cannot type emojis. They appear as blank space.

Hi folks,

Is this going to be resolved anytime soon?

I am planning for a product (6-9 months out) that relies on Emoji rendering on macOS etc.

Thanks, Pete

The solution is to use a font that supports them…

Hi!

Can you please explain how I do this?

Clearly, I want to do this on a cross-platform basis, so presumably need to tell Juce to use the system font in some way for all drawing operations by default.

Thanks in advance,

Pete

Answering for myself here :slight_smile: - I guess that this shows the sort of code to use?

Anybody got any more thoughts?

Pete

Well, I just tried that app on Mac, and wasn’t able to paste-in the following test text via Clipboard…

a🍅b😀c

Hmm… any thoughts, folks?

Firstly, it’s up to you to find a suitable font. Then, you can embed it into your project as binary data and load it up in code - something like this:

const Font myFont = Typeface::createSystemTypefaceFor (BinaryData::myFont_ttf, BinaryData::myFont_ttfSize);

Colour Emoji doesn’t work on JUCE on Mac. Please check the attached thread Unicode and font rendering in JUCE

Thanks Harry. That’s not good news!

impete, if you only need support for OSX you might consider using a WebBrowserComponent or maybe embedding a custom NSView in your Juce application. It’s a bit of a trick but might be enough for you.

Hi,

Many thanks for the suggestion!

However, I need to have a full-featured text editor component embedded in the application - that supports Emoji - across all platforms.

So, this is a real issue for me.

I’ve done something similar to what you suggest in the past with Juce, but it is a real pain to have to do such things across more than one platform.

I would argue that as Emoji are such a major part of modern writing, then it really should be sorted-out in Juce itself - sooner rather than later :slight_smile:

With best wishes,

Pete

Is this something I need to list here on the GitHub issue tracking system?

Thanks,

Pete

1 Like

I guess it couldn’t do any harm, it is probably the correct place for it.

Posted as a bug here:

I fought for it long and hard back in the days but wouldn’t the fallBackFont system we once had work for this as well?

Jules it has been 6 years, maybe someone in the team would like to have a look at revitalising the fallbackFont, this would allow Emoji (if you have a font for it) as well wouldn’t it?

The reason the fallback font stopped working was IIRC because the underlying OS API functions changed in a way that made it impossible to detect when glyphs were missing, and instead we had to rely on the OS typeface itself doing the substitution.

But yes, it probably could use another look now, in case things have changed.