JTextPane og font
Jeg er ved at skrive en HTML editor og er løbet ind i nogle problemer med anvende forskellige fonte i JTextPane. Fontene bliver valgt fra en JComboBox, hvorefter de indsættes på cursorens plads eller erstatter den nuværende font, hvis der er noget markeret tekst. Det ser rigtig ud i editoren, men når jeg skriver det til en html fil er der ingen tags der angiver fontelse if(e.getSource() == fonts)
{
SimpleAttributeSet att = new SimpleAttributeSet();
StyledDocument styledDoc = textPane.getStyledDocument();
int start = textPane.getSelectionStart();
int end = textPane.getSelectionEnd();
int cursorLocation = textPane.getCaretPosition() ;
int index = fonts.getSelectedIndex();
String fontName = elements[index];
//set font type
StyleConstants.setFontFamily(att, fontName);
//text is selected -> change selection
if(start != end)
{
styledDoc.setCharacterAttributes(start, (end-start), att, false);
}
//no selection -> from caret position
else
{
styledDoc.setCharacterAttributes(cursorLocation, 1, att, false);
textPane.grabFocus();
//move cursor to the right position
textPane.setCaretPosition(cursorLocation +1);
}
}