我叫gc.setAntialias(SWT.ON);,它什么都不做。根据该方法,它应该工作。

的Javadoc状态:

  

设定接收机的抗混叠   值到参数,它必须是   SWT.DEFAULT,SWT.OFF或SWT.ON之一。

这不是为我工作,我在一个简单的帆布画。

有帮助吗?

解决方案

以下在应用我建工作对我来说,我的猜测时/你怎么也得在做到这一点。

所以,我创建了一个新的GC,设置消除锯齿为你做,然后画了,我需要与GC对象是什么。关键是将其连接到你将绘制在壳中。

GC gc = new GC(shell);
gc.setAntialias(SWT.ON); 
//then I attach to LightweightSystem for testing.
LightweightSystem lws = new LightweightSystem(shell);

除此之外确保你这样做,你画任何东西之前。如果你要调用它之后也许尝试调用重绘或整个空间的重绘。

对不起没有更多的信息,我不知道到底什么是错的。

其他提示

继derBiggi的回答,你也CA强制高级选项设置为true。

gc.setAdvanced(true)

另外,如果你正在绘制的标签,请确保您使用gc.setTextAntialias( SWT.ON );

您还可以检查是否gc.getAdvanced()返回true,应该setAntialias()setTextAntialias后设置。

除了从它的非常直截了当。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top