JTextArea różne czcionki

JTextArea różne czcionki
JP
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

Hej,
mam taki problem:
W jedym TextArea chce mieć obsługę 2 różnych czcionek. Jeżeli ktoś wpisze tekst w języku polskim to tekst powinien się wyświetlać za pomocą zwykłych czcionek np Arial., ale jeżeli tekst będzie w języku Khmer to do wyświetlanie powinna zostać użyta nowa czcionka Khmer.tff
Nową czcionkę tworze tak:

this.f = Font.createFont( Font.TRUETYPE_FONT, new FileInputStream("D:\java\Khmer.ttf") );
f = f.deriveFont(12f);

Jeżeli do TextArea ustawie czcionkę Khmer to polskie znaki mi się nie wyświetlają. Jeżeli ustawię zwykłą to khmerskich liter nie widzę.
Czy da się jakoś zrobić obsługę 2 różnych czcionek ? Jak wykryć czy teks jest PL czy Khmer ?
Proszę o pomoc

Czcionka Khmer: http://www.selapa.net/khmerfonts/fontinfo.php?font=2

bogdans
  • Rejestracja: dni
  • Ostatnio: dni
1

Wyjaśnij dwie kwestie?:
Czy w JTextArea chcesz wyświetlać część tekstu czcionka polską, a część khmerską? Tak się nie da, zmień komponent na JTextPane.
Skąd się bierze tekst w JTextArea? Odczytywany jest plik, czy użytkownik wpisuje z klawiatury?

JP
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3
0

część tekstu czcionka polską, a część khmerską - TAK, ok JTextPane -myślę że będzie OK. Teks jest wpisywany przez użytkownika lub copy\paste. Chyba trzeba będzie jakoś wykryć czy jest to tekst PL czy Khmer ? Keypressed listener się do tego przyda ? Wykryje też copy\paste ?

bogdans
  • Rejestracja: dni
  • Ostatnio: dni
0

Do wykrywania zmian w tekście użyj raczej DocumentListener, przydatny będzie też DocumentFilter. Nie mam pojęcia jak odróżnić tekst PL od Khmer.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.