【问题标题】:How to show vectorized text using libgdx?如何使用 libgdx 显示矢量化文本?
【发布时间】:2012-03-10 15:00:02
【问题描述】:

我对 Android 的 libGDX(也可以在 PC 上工作的好 OpenGL 包装器)非常熟悉,并且我已经阅读了一些关于如何显示图像和形状的很好的示例。 然而,当我想查看如何显示文本时,我注意到我唯一能看到这个库支持的是BitmapFont,它为每个字符使用一个位图。某些分辨率和字体大小可以,但在其他情况下会变得模糊/像素化。

还有其他方法可以使用这个很酷的库来显示文本吗?某种方式来显示矢量字体,并且还使用“.fnt”以外的更流行的字体文件扩展名?

【问题讨论】:

    标签: android text fonts vectorization libgdx


    【解决方案1】:

    badlogic 博客上最近有一篇关于 generating bitmap fonts on the fly from TrueType font files 的文章,它应该可以解决您在缩放时难看的打包字体文件的问题。

    当我刚接触 Android 和 libGDX 时,我花了一些时间寻找矢量字体解决方案来通过 libGDX 绘制可缩放文本。我从来没有找到任何东西(甚至没有通用 Java 或通用 Android)。我发现的大多数字体解决方案都是基于位图构建的,或者是非常复杂的渲染系统(很难适应 OpenGL)。这对我来说也有点奇怪,我还没有找到一个连贯的解释。

    【讨论】:

    • 这看起来很有希望,那里的人写道它对他们有用。怎么还没内置呢?它是否有一些需要修复的错误...?
    • 另外,是否还有另一种解决方案,包括为字体绘制低级线条和像素,而不必创建位图?
    • 至于为什么它没有内置,我怀疑它不是 libgdx 的一部分,因为它是新的并且没有得到很多测试。我相信他们会对帮助或报告其有用性感兴趣。至于其他使用 OpenGL 原语的解决方案,我已经看过但没有发现任何东西(当然我不能证明是否定的)。不过,我怀疑大多数人都喜欢生成位图的优化。
    • 好吧。你的回答赢得了我的“V”。希望我会看到一个更好的 libgdx 库,它可以很好地显示矢量化字体。谢谢您的帮助!
    • 我发现了一篇有趣的帖子,描述了使用 android 框架显示某些字符的解决方案。我想知道这些效果如何:code.google.com/p/libgdx/issues/detail?id=609
    【解决方案2】:

    我认为没有合适的方法可以这样做,因为 libgdx 也适用于 openGL。 OpenGL 使用纹理来显示图像,以便您的设备能够以硬件加速绘制图像。我不使用 libgdx,但您可能可以编写自己的函数,首先在纹理上绘制基于矢量的字体,然后在屏幕上绘制纹理。 -> 但后来它不再矢量化了。

    【讨论】:

    • 好吧,如果我调用一个知道字体大小的函数,它与以“正确”方式显示它不完全相同吗?肯定有一些图书馆可以做到这一点,不是吗?
    猜你喜欢
    • 2016-12-03
    • 2013-03-10
    • 1970-01-01
    • 1970-01-01
    • 2017-05-29
    • 1970-01-01
    • 2021-08-06
    • 1970-01-01
    • 2012-05-15
    相关资源
    最近更新 更多