gpt4 book ai didi

Java 小程序 : no antialiased font in browser (but in AppletViewer)

转载 作者:行者123 更新时间:2023-11-30 05:05:09 24 4
gpt4 key购买 nike

在AppletViewer中,我的Applet看起来像这样: screenshot AppletViewer

在浏览器中,我的小程序如下所示: screenshot browser

如您所见,字体没有抗锯齿。而且背景颜色也不一样。所有文本都在右侧被剪切。

那可能是什么?

您也可以自己尝试一下here .

<小时/>

来自here我尝试使用此代码:

System.setProperty("awt.useSystemAAFontSettings","on");
System.setProperty("swing.aatext", "true");

但这只会导致这个异常:

java.security.AccessControlException: access denied (java.util.PropertyPermission awt.useSystemAAFontSettings write)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:374)
at java.security.AccessController.checkPermission(AccessController.java:546)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:532)
at java.lang.System.setProperty(System.java:742)
at applets.Termumformungen$in$der$Technik_08_Ethanolloesungen.Applet.init(Applet.java:51)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Plugin2Manager.java:1640)
at java.lang.Thread.run(Thread.java:680)
Exception: java.security.AccessControlException: access denied (java.util.PropertyPermission awt.useSystemAAFontSettings write)

最佳答案

它应该通过覆盖 paint 方法来工作,就像这样为每个您想要抗锯齿的组件:

static void activateAntiAliasing(Graphics g) {
try {
Graphics2D g2d = (Graphics2D)g;

// for antialiasing geometric shapes
g2d.setRenderingHint( RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON );

// for antialiasing text
g2d.setRenderingHint( RenderingHints.KEY_TEXT_ANTIALIASING,
RenderingHints.VALUE_TEXT_ANTIALIAS_ON );

// to go for quality over speed
g2d.setRenderingHint( RenderingHints.KEY_RENDERING,
RenderingHints.VALUE_RENDER_QUALITY );
}
catch(ClassCastException ignored) {}
}

@Override public void paint(final Graphics g) {
activateAntiAliasing(g);
super.paint(g);
}

关于Java 小程序 : no antialiased font in browser (but in AppletViewer),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5353904/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com