Add more useful APIs to javafx.scene.text.Font
Philip Race
philip.race at oracle.com
Tue May 13 16:12:54 UTC 2025
For the fonts like sans serif, FX just asks fontconfig for the list of
fonts that make it up for the current locale.
Garbled text isn't likely to be due to a font selection difference. More
likely a bug in mapping to the correct font
so I am not sure API methods on Font will help.
Also canDisplay() is a tricky one as I've discussed this recently on the
client-libs list.
It was designed to report what glyphs *that physical font* supports.
Reporting pseudo-glyphs, and glyphs from fall backs distort it.
-phil.
On 5/12/25 8:44 AM, Glavo wrote:
> I hope this issue gets more attention. Can anyone take a look at this
> email?
>
> Glavo
>
> On Sun, May 4, 2025 at 4:18 PM Glavo <zjx001202 at gmail.com> wrote:
>
> Hi,
>
> We have noticed that JavaFX's strategy for selecting default fonts
> can sometimes be quite odd,
> and at times it doesn't properly follow the fontconfig
> configuration. As a result,
> we frequently receive feedback from Linux users reporting that all
> Chinese characters appear as garbled text.
> This[1] is one piece of the feedback that contains useful information.
>
> We are not sure whether these problems can be solved. However,
> we've noticed that unlike AWT,
> javafx.scene.text.Font API lacks most useful methods. For example,
> it does not provide
> canDisplay/canDisplayUpTo methods, making it impossible to
> determine whether
> a font can render a given text. I found that CharToGlyphMapper
> actually contains
> the corresponding method, but it is not exposed through the Font API.
>
> So is it possible to add more useful API methods to Font, like AWT
> does?
> This will be of great help to us.
>
> Glavo
>
> [1]: https://github.com/HMCL-dev/HMCL/issues/3104
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mail.openjdk.org/pipermail/openjfx-dev/attachments/20250513/75e5cfb2/attachment.htm>
More information about the openjfx-dev
mailing list