Pojedynczy zestaw czcionek Unicode, ze względu na duży zbiór znaków, może obsłużyć wszystkie języki i platformy. Pliki definicji symboli Unicode mają właściwie taki sam format i składnię jak zwykłe pliki definicji symboli.
Podstawową różnicą jest składnia nagłówka czcionki, jak pokazano poniżej:
*UNIFONT,6,font-name above,below,modes,encoding,type,0
Parametry takie jak nazwa-czcionki , nad , pod i orientacja są takie same jak w czcionkach standardowych. Pozostałe dwa parametry są zdefiniowane następująco:
Kodowanie czcionki. Jedna z następujących wartości całkowitych.
0 Unicode
1 Wielobajtowe 1
2 Plik symbolu
Informacja o osadzeniu czcionki. Określa, czy czcionka jest licencjonowana. Czcionki licencjonowane nie mogą być modyfikowane ani wymieniane. Mogą być dodawane wielkości kodowane bitowo.
0Czcionka może być osadzona
1Czcionka nie może być osadzona
2Osadzanie jest tylko do odczytu
Inną ważną różnicą jest obsługiwanie kodu 7 odwołania do symbolu podrzędnego. Jeśli opis symbolu zawiera kod 7 odwołania do symbolu podrzędnego, wówczas dane następujące po kodzie 7 są interpretowane jako wartość dwubajtowa. Ma to wpływ na łączną liczbę bajtów danych ( defbajty ) w nagłówku opisu symbolu. Na przykład, poniższy opis symbolu znajduje się w pliku romans.shp:
*00080,4,keuroRef 7,020AC,0
Drugie pole w nagłówku reprezentuje łączną ilość bajtów w opisie symbolu. Jeśli użytkownik nie pracował z opisami czcionek Unicode, może preferować użycie trzech bajtów zamiast czterech, ale spowodowałoby to błąd podczas kompilacji pliku SHP. Dzieje się tak nawet wtedy, gdy numer symbolu, do którego następuje odwołanie, nie znajduje się w obszarze dwubajtowym (poniżej 255); kompilator zawsze używa dwóch bajtów dla tej wartości, należy więc uwzględnić to w nagłówku.
Ostatnią różnicą między definicjami symboli Unifont i zwykłymi definicjami symboli są numery tych symboli. Definicje symboli Unifont dostarczane z programem wykorzystują szesnastkowe, a nie dziesiętne numery symboli. Mimo że numery szesnastkowe nie są wymagane, to ich użycie ułatwia odwoływanie się do numerów symboli za pomocą wywołania \U+ wartości znaków sterujących.