2013-02-19 2 views
6

Есть ли возможность настроить сглаживание шрифтов в приложении Java swing?Java Swing - лучшее сглаживание шрифтов

Вот некоторые сравнения:

enter image description here

Разница не столь велик, но если вы достаточно близко, Adobe Story (и много других приложения Flash) обладает более сильным и более хорошим сглаживанием.

Я пишу текстовый редактор на Java, и я хотел бы добиться такого сглаживания в моем приложении на JTextPane и JLabels.

+0

Посмотрите на этот вопрос: http://stackoverflow.com/questions/7593944/how-to-do-font-smoothing-for-awt-swing-application –

+1

не совсем верно , согласен с этим скриншотом, разница большая, для лучшей помощи скорее опубликуйте [SSCCE] (http://sscce.org/), короткую, выполнимую, компилируемую, примерно как описано «Мой Java Application' – mKorbel

+0

http://stackoverflow.com/questions/179955/how-do-you-enable-anti-aliasing-in-arbitrary-java-apps –

ответ

-2

Вы можете использовать HTML-теги на JLabel, как:

<html><body><br/><br/><body/><html/> 

Вы можете, например, сделать кнопку, например, так:

button = new JButton("<html><b><u>T</u>wo</b><br>lines</html>"); 

Это выглядит следующим образом: enter image description here

но здесь больше о тегах HTML LINK

+1

Это абсолютно не связано! –

0

В зависимости от того, какой объект вы используете t о отображения текста вам нужно сделать пользовательский одну из нее и перезапись метод, который отвечает за живопись ваш текст

Вот пример пользовательского JTextArea

public class CustomTextArea extends JTextArea { 

    @Overwrite 
    public void paintComponent(Graphics g) { 
     Graphics2D g2 = (Graphics2D) g.create(); 
     g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); 
     super.paintComponent(g); 
    } 

} 

Вы, возможно, потребуется изменить его некоторые больше, но это основная концепция

Смежные вопросы