La clase java.swing.JTextPane te permite crear un área de texto que admite diferentes tipos de fuentes, tamaños y colores.
Ejemplos:
import javax.swing.*;
import javax.swing.text.*;
JTextPane texto = new JTextPane();
// Insertar una palabra
texto.getDocument().insertString(posicion,palabra,atributo);
// Cambiar el atributo de una palabra ya insertada
texto.getStyledDocument().setCharacterAttributes(posicionInicial,posicionFinal-posicionInicial,atributo,false);
// Establecer un atributo en el área
texto.setCharacterAttributes(atributo,false);
// Ejemplo de Atributo
SimpleAttributeSet atributo = new SimpleAttributeSet();
StyleConstants.setFontSize(atributo,14);
StyleConstants.setForeground(atributo,Color.blue);