2012-12-30 33 views
7

Chcę dodać języki UTF8 w JavaFX, ponieważ kiedy dodaję etykietę z perskimi treściami, pokazuje to dziwne wyniki.Jak dodać kodowanie UTF8 do obsługi nieangielskojęzycznej w JavaFX?

Czy ma specjalną wtyczkę lub określoną konfigurację do obsługi tego problemu?

+1

Format UTF jest obsługiwany natywnie. Prawdopodobnie jest to błąd w Twoim kodzie. Być może mógłbyś zaktualizować pytanie jakimś kodem? – artbristol

+0

Założę się, że masz problem z renderowaniem * ze skryptem arabskim, a nie z problemem kodowania. Jakiego systemu są uruchomione? Czy sprawdziłeś w debugerze w tekście, aby upewnić się, że nie jest uszkodzony? – bmargulies

+0

Czy testowałeś w zwykłej starej Java Swing? Mam tendencję do dodawania -Dfile.encoding = utf8 w normalnej Javie. Niestety, nie próbowałem tego w JavaFx – JayTee

Odpowiedz

2

Najprawdopodobniej Twój problem nie jest związany z JavaFX, ale z pewnymi problemami z kodowaniem. UTF-8 (który nie jest zbiorem języków, ale kodowaniem znaków Unicode) jest w pełni obsługiwany w Javie od wieków. Zrób sobie przysługę i poświęć kilka godzin na trawienie this.

4

Perski jest od prawej do lewej?

W takim przypadku należy użyć wersji JavaFX z RTL support. Byłby to JavaFX 8 (zawarty w JDK8). Dostępny jest podgląd here.

Upewnij się, że masz loaded and are using a font, który zawiera glify dla postaci perskich.

Oto niektóre sample JavaFX 8 code do wyświetlania coś, co wygląda na mnie jak skrypt perski.

Wszystkie inne uwagi na temat tego pytania dotyczące używania i interpretowania prawidłowego kodowania znaków są również ważne.

1

I w obliczu tego samego problemu, odpowiedź była, że ​​kodowanie pliku z moich plików kodu źródłowego nie było UTF8 (Używam IntelliJ IDEA 14) i ich konwersji na UTF-8 i to działało.