Как сделать Font Smoothing для приложения AWT / Swing? - PullRequest
6 голосов
/ 29 сентября 2011

Мне нужно сделать сглаживание шрифтов для приложения AWT в системе Windows. Занимаясь поиском, я узнал, что могу установить следующий аргумент VM в Eclipse.

-Dawt.useSystemAAFontSettings=gasp

Но это не дает никаких положительных результатов. Если у кого-то есть идея о том, как добиться сглаживания шрифтов, пожалуйста, дайте мне знать.

РЕДАКТИРОВАТЬ После ответа Andrew

Я добавил следующий фрагмент кода в метод рисования

public class BottomSubmitButtons extends Canvas {

@Override
public void paint(Graphics g) {

    Graphics2D g2 = (Graphics2D)g;
    RenderingHints rh = new RenderingHints(
            RenderingHints.KEY_TEXT_ANTIALIASING,
            RenderingHints.VALUE_TEXT_ANTIALIAS_GASP);
    g2.setRenderingHints(rh);
}
}

Это, похоже, улучшило сглаживание в одной из вспомогательных панелей. Но то же самое в другой панели не дает сглаживания. Также поля TextField по умолчанию становятся невидимыми, хотя они становятся видимыми, когда я щелкаю в этой области

1 Ответ

5 голосов
/ 29 сентября 2011

Играть со значениями для RenderingHints.KEY_TEXT_LCD_CONTRAST.Когда вы найдете что-то, что работает, используйте это в качестве значения командной строки.

...