Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
强制Java2D亚像素抗锯齿_Java_Linux_Antialiasing - Fatal编程技术网

强制Java2D亚像素抗锯齿

强制Java2D亚像素抗锯齿,java,linux,antialiasing,Java,Linux,Antialiasing,我正在使用Java2D生成带有文本的图像。在运行Ubuntu的服务器上,字体的抗锯齿效果很差,但在OSX和Ubuntu工作站上却呈现得很漂亮。我想这两个Ubuntu安装之间的区别是xwindows和没有xwindows?大概无论如何,我猜我的渲染提示被忽略了,服务器上没有使用Java1.6亚像素抗锯齿算法 我的渲染提示如下。我正在优化垂直定位的显示器 g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_

我正在使用Java2D生成带有文本的图像。在运行Ubuntu的服务器上,字体的抗锯齿效果很差,但在OSX和Ubuntu工作站上却呈现得很漂亮。我想这两个Ubuntu安装之间的区别是xwindows和没有xwindows?大概无论如何,我猜我的渲染提示被忽略了,服务器上没有使用Java1.6亚像素抗锯齿算法

我的渲染提示如下。我正在优化垂直定位的显示器

g.setRenderingHint(RenderingHints.KEY_ANTIALIASING, RenderingHints.VALUE_ANTIALIAS_ON);
g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_LCD_VRGB);
我直接从一个ttf文件创建字体,这确实改善了渲染效果。我不认为这个字体是安装在机器上的,所以它默认为其他字体。现在字体是正确的,但抗锯齿仍处于关闭状态。它看起来确实比我完全关闭抗锯齿并生成图像时要好,所以我假设它正在做一些事情,但它看起来不太好

我尝试了Java属性

-Dawt.useSystemAAFontSettings=lcd
但这并没有改变任何事情


有什么建议吗?谢谢。

您是否已经尝试过这样的方法:

public void paintComponent(Graphics g){
  @SuppressWarnings("unchecked")
  Map<String, String> desktopHints = (Map<String, String>) Toolkit
    .getDefaultToolkit().getDesktopProperty("awt.font.desktophints");
  Graphics2D g2d = (Graphics2D) g;
  if(desktopHints != null){
    g2d.addRenderingHints(desktopHints);
  }
  g2d.drawString("text", 10, 10);
}
公共组件(图形g){
@抑制警告(“未选中”)
地图桌面提示=(地图)工具包
.getDefaultToolkit().getDesktopProperty(“awt.font.desktophints”);
Graphics2D g2d=(Graphics2D)g;
if(desktopHints!=null){
g2d.addRenderingHints(桌面提示);
}
g2d.抽绳(“文本”,10,10);
}
paintComponent()
中接收的
Graphics
对象设置为默认值,不了解桌面属性(监视器类型)。查询
desktophits
工具包将从底层操作系统返回有关所用硬件的信息。比较第59页的“肮脏的富客户机”