RFR: 8269806: Emoji rendering on Linux [v3]

Phil Race prr at openjdk.java.net
Wed Apr 27 19:01:34 UTC 2022


On Wed, 30 Mar 2022 17:08:37 GMT, Nikita Gubarkov <duke at openjdk.java.net> wrote:

>> It was implemented in JetBrains Runtime a year ago and was ported & refactored for this PR
>> It includes:
>> - Bitmap glyph loading via Freetype
>> - Manual scaling & transformation of bitmap glyphs with nearest-neighbor or bilinear-mipmap style algorithms depending on the text antialiasing hint
>> - Storing BGRA glyphs in glyph cache & rendering them as plain images, as currently used XRender text drawing functions doesn't support colored glyphs
>> - Small fixes in related code like null-checks which could cause NPE & comment typos
>
> Nikita Gubarkov has updated the pull request incrementally with one additional commit since the last revision:
> 
>   8269806: Fix emoji rendering with -Dsun.java2d.xrender=false and AA=OFF

So any ideas ?

You might also try what happens if you try a font size of 100 .. IIRC when it is > 80 then we switch to outlines, and
here that might mean the glyphs suddenly vanish. And we do this because we don't want to cache massive glyphs.
So you may need to special case that too - if you aren't already.

-------------

PR: https://git.openjdk.java.net/jdk/pull/4798



More information about the client-libs-dev mailing list