@@ -95,6 +95,8 @@ class Font(object):
9595 ]
9696 _NAMES_BY_ID = {item ['id' ]: item for item in _NAMES }
9797 _NAMES_BY_KEY = {item ['key' ]: item for item in _NAMES }
98+ _NAMES_MAC_IDS = {"platformID" : 3 , "platEncID" : 1 , "langID" : 0x409 }
99+ _NAMES_WIN_IDS = {"platformID" : 1 , "platEncID" : 0 , "langID" : 0x0 }
98100
99101 # Style Flags:
100102 # https://docs.microsoft.com/en-us/typography/opentype/spec/head
@@ -334,7 +336,9 @@ def get_name(self, key):
334336 font = self .get_ttfont ()
335337 name_id = self ._get_name_id (key )
336338 name_table = font ['name' ]
337- name = name_table .getName (name_id , 3 , 1 , 0x0409 )
339+ name = name_table .getName (name_id , ** self ._NAMES_MAC_IDS )
340+ if not name :
341+ name = name_table .getName (name_id , ** self ._NAMES_WIN_IDS )
338342 return name .toUnicode () if name else None
339343
340344 def get_names (self ):
@@ -772,7 +776,8 @@ def set_name(self, key, value):
772776 name_id = self ._get_name_id (key )
773777 name_table = font ['name' ]
774778 # https://github.com/fonttools/fonttools/blob/main/Lib/fontTools/ttLib/tables/_n_a_m_e.py#L568
775- name_table .setName (value , name_id , 3 , 1 , 0x0409 )
779+ name_table .setName (value , name_id , ** self ._NAMES_MAC_IDS )
780+ name_table .setName (value , name_id , ** self ._NAMES_WIN_IDS )
776781
777782 def set_names (self , names ):
778783 """
0 commit comments