当前位置: 首页 > 知识库问答 >
问题:

为什么同样的字体在Java app中从Netbeans运行和从Jar运行看起来不一样?

陈俊誉
2023-03-14

在我的Java Swing应用程序中,我有一些JTextAreas,我意识到文本在从Netbeans运行时看起来不同,而当应用程序从Jar文件运行时,为什么?如何使它们看起来一样?

JTextArea Client_Side_TextArea=new JTextArea(),Network_TextArea=new JTextArea();

setLayout(new BorderLayout());

Client_Side_TextArea.setFont(new Font("Monospaced",0,15));
Client_Side_TextArea.setForeground(new Color(0,28,218));
Client_Side_TextArea.setPreferredSize(new Dimension(290,300));
Client_Side_TextArea.append("           Client Side\n================================\n");
add("West",Client_Side_TextArea);

Network_TextArea.setFont(new Font("Monospaced",0,15));
Network_TextArea.setBackground(new Color(226,226,226));
Network_TextArea.setForeground(new Color(0,28,218));
Network_TextArea.setPreferredSize(new Dimension(270,300));
Network_TextArea.append("            Network Connection\n =========================================\n");
add("Center",Network_TextArea);

在下图中,上部来自使用Netbean运行的应用程序,下部是从Jar文件运行时的外观:

共有1个答案

魏毅
2023-03-14

这是预期的行为:正如< code>Font API中所讨论的,每个支持的平台可能会将不同的物理字体映射到特定的逻辑字体,如< code >字体。等宽。每个表情

此外,由于这里引用的原因,不要使用< code>setPreferredSize()。如果您选择重写< code>getPreferredSize(),请确保不要落入这个陷阱。

 类似资料:
  • 使用ireport designer 5.6.0设计报表,但是它在ireport中与从jsf应用程序生成的报表看起来不同,作为最初的解决方案,我在项目中添加了ireport字体,它解决了粗体文本的问题,但是字体的大小仍然有很大不同。 例如,在ireport的标签中,它看起来完全居中,但在Java中,文本不合适,它看起来大得多。

  • 我在Grizzly服务器上为Jersey应用程序运行以下简单示例: 当我从IntelliJ运行它时,一切都按照预期工作。 已连接到目标VM,地址:“127.0.0.1:61163”,传输:“Socket”2016年12月30日4:00:07PM com.sun.jersey.api.core.PackagesResourceConfig init信息:在包中扫描根资源和提供程序类:Applicat

  • 问题内容: 我正在使用Google Web Font的PT-sans 但在Chrome和Firefox中看起来却有所不同 我需要添加什么使其在所有浏览器中都相同吗? 问题答案: css reset可以解决问题,我不确定。

  • 我正面临着这个奇怪的问题,我正在开发的gui应用程序在intellij内部运行时看起来比在外部运行时要小。下面是一个演示图像: 奇怪的是,我喜欢它的缩放方式。为什么会发生这种情况?在Intellij a之外是否有可能复制这种情况?

  • 问题内容: 我一直在尝试了解如何开始编写和运行JUnit测试。 当我阅读本文时: http://junit.sourceforge.net/doc/testinfected/testing.htm 我到达页面的中间,他们写道:“ JUnit带有图形界面来运行测试。在窗口顶部的字段中输入测试类的名称。按Run(运行)按钮。” 我不知道如何启动该程序。我什至不知道它在哪个包中,或者您如何从IDE运行库