Here’s a more windows centric approach and it foreaches through all the Windows
fonts:
** It’s interesting that it says that it was last modified today… odd, but
whatever
from win32com.client.dynamic import Dispatch
ids =
[0,1,2,3,4,5,6,9,10,19,21,25,33,34,58,62,165,166,167,170,191,192,193,195,197,203,255]
shell_app = Dispatch('Shell.Application')
shell_app.Namespace('c:\\windows\\fonts')
folder = shell_app.Namespace('c:\\windows\\fonts')
myfile = ""
for font in folder.Items():
print(font.Name)
#if font.Name == "Verdana":
# break
for num in ids:
val = None
val = folder.GetDetailsOf(font, num)
item = folder.GetDetailsOf(None, num)
if val:
print("\t", num, f'{item} = {val}')
******************
partial output:
******************
Verdana
0 Name = Verdana
1 Font style = Regular; Bold; Bold Italic; Italic
2 Show/hide = Show
3 Designed for = Latin; Greek; Cyrillic
4 Category = Text
5 Designer/foundry = Carter + Cone
6 Font embeddability = Editable
10 Date modified = 6/9/2022 11:16 AM
From: python-win32 <[email protected]> On
Behalf Of Jérémie Bergeron
Sent: Wednesday, June 8, 2022 6:28 AM
To: [email protected]
Subject: [python-win32] Load custom font
Hi,
Is it possible to get the family name of a font and/or any other information
from the naming table from a font file?
Something like that:
font = win32ui.loadFont(pathToTheFont)
familyName = font.getNameId(1)
Have a nice day
_______________________________________________
python-win32 mailing list
[email protected]
https://mail.python.org/mailman/listinfo/python-win32