【问题标题】:Why is my Graphics2D Font changing randomly?为什么我的 Graphics2D 字体随机变化?
【发布时间】:2021-03-16 00:02:23
【问题描述】:

我已将字体“Minecraft”加载到 Loader 类中的静态 Font 对象中。它在程序启动时生成并且永远不会更改。 我有多个屏幕。他们每个人都访问 Font 对象并定义字符串的字体:

g2.setFont(Loader.font)

一切正常。 但是一旦我对新的 Start 类使用相同的过程,Font 就会回到默认字体。在每个屏幕上。如果我通过以下方式检查字体名称:

System.out.println(Loader.font.getName());

我得到了正确的字体名称(“Minecraft”)作为输出。

我真的不知道为什么会发生这种情况。我该如何解决这个问题或错误是什么?

(Here a short video if it wasn´t clear what my problem is)

【问题讨论】:

  • 这取决于你在哪里调用 setFont。您需要展示一个最小的、可重现的问题示例。
  • 我正在努力。但我不确定这是否可重现。因为它只是随机发生在这个班级而不是其他班级。
  • 听起来您有不同的图形上下文,您是否使用与g2 完全相同的引用来处理应用程序中的所有文本?如果没有,那么每次创建/引用新的图形上下文时都需要使用graphics.setFont(Loader.font);

标签: java fonts graphics2d


【解决方案1】:

实际上修复起来非常简单。 我只是没有在画我的 JPanel。不知何故,除了字体之外的所有东西都是自动绘制的。我不知道为什么。我仍然很困惑。 至少现在问题已经解决了。

【讨论】:

    猜你喜欢
    • 2014-11-20
    • 1970-01-01
    • 1970-01-01
    • 2021-11-20
    • 2012-08-11
    • 2021-12-10
    • 1970-01-01
    • 2013-01-02
    • 1970-01-01
    相关资源
    最近更新 更多