LibGDX RTL字体渲染?

Art*_*545 5 java android libgdx

我正在创建一个应该支持两种语言的应用程序,英语和希伯来语.

问题是希伯来语是从右到左的西方语言,英语是从左到右的语言,而LibGDX不支持RTL字体.

我已经为字体创建了位图,一切正常

IMG

但是当我用希伯来语写作时,它会写出反转的字样.当我单独用希伯来语写作时,我有一个解决方案,只是使用a反转单词StringBuilder,但这是一个便宜的修复.但是,如果我想实现聊天或角色名称呢?

Yve*_*omb 5

从我所看到的最简单的解决方案是使用Heiro.如果你看看这个线程Hiero渲染阿拉伯字体从右到左,最近提供了容纳RTL的条款

在此输入图像描述

从那里变得越来越困难.关于这个问题有很多问题(一个例子在libgdx(Android)中从右到左显示非西方语言)和更少的解决方案.

您可以选择为常用单词或表达式创建字符串字形库,尽管这是一个艰苦的设置过程,使用聊天时会产生开销,就像您的字符串反转一样.

这个讨论在libgdx github中 支持复杂的字体渲染(中文,阿拉伯语,...).进入这些和更多的选项,包括支持Windows sridharsundaram/complexscriptlayout的工作,虽然这不是Android,但可能值得研究进一步的开发思路.

从积极的方面来看,这方面的近期发展越来越多,因此对于使用libgdx的开发人员来说,RTL和bidi格式应该变得越来越容易.

有趣的是这个支持问题从右到左文本渲染支持#787,因为存在开发资源相同问题的人的痕迹痕迹.