Центрирование текста в JTextArea или JTextPane - горизонтальное выравнивание текста

есть ли способ создать горизонтально центрированный текст для JTextArea, как с JTextField?

setHorizontalAlignment(JTextField.CENTER);

есть ли способ сделать то же самое с многострочной текстовой областью? Я не могу найти метод для этого с JTextArea, так что есть ли другой вариант? JTextPane? Если да, то как?

1 ответов


вам нужно использовать JTextPane и использовать атрибуты. Следует центр весь текст:

StyledDocument doc = textPane.getStyledDocument();
SimpleAttributeSet center = new SimpleAttributeSet();
StyleConstants.setAlignment(center, StyleConstants.ALIGN_CENTER);
doc.setParagraphAttributes(0, doc.getLength(), center, false);

изменить:

вертикальное центрирование, насколько я знаю, не поддерживается. Вот какой код вы можете найти полезным:вертикальное выравнивание JTextPane