Domanda

In un JTextPane con DefaultStyledDocument la struttura del documento (gerarchia degli oggetti Element) termina con un LeafElement che abbraccia tutto il carattere del paragrafo allegato. C'è un modo per personalizzare il documento in modo tale che ogni elemento foglia rappresenti un singolo carattere?

(Background: sto cercando di implementare uno schema di colorazione personalizzato, in qualche modo simile alla colorazione della sintassi in un IDE. L'uso di setCharacterAttributes () a questo scopo non è un'opzione, principalmente a causa di considerazioni sulle prestazioni.)

È stato utile?

Soluzione

Potresti essere interessato a jsyntaxpane . Utilizza un PlainDocument invece di utilizzare lo StyledDocument più affamato di risorse. Una foglia per ogni personaggio richiederà molta memoria, quindi potresti voler usare una foglia per ogni "token".

Puoi anche usare uno StyledDocument quindi aggiornare lo stile per ogni token in un thread separato.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top