-
-
Save pklaus/dce37521579513c574d0 to your computer and use it in GitHub Desktop.
Extracting font names from TTF/OTF files using Python and fontTools
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| #!/usr/bin/env python | |
| """ | |
| From | |
| https://github.com/gddc/ttfquery/blob/master/ttfquery/describe.py | |
| and | |
| http://www.starrhorne.com/2012/01/18/how-to-extract-font-names-from-ttf-files-using-python-and-our-old-friend-the-command-line.html | |
| ported to Python 3 | |
| """ | |
| import sys | |
| from fontTools import ttLib | |
| FONT_SPECIFIER_NAME_ID = 4 | |
| FONT_SPECIFIER_FAMILY_ID = 1 | |
| def shortName( font ): | |
| """Get the short name from the font's names table""" | |
| name = "" | |
| family = "" | |
| for record in font['name'].names: | |
| if b'\x00' in record.string: | |
| name_str = record.string.decode('utf-16-be') | |
| else: | |
| name_str = record.string.decode('utf-8') | |
| if record.nameID == FONT_SPECIFIER_NAME_ID and not name: | |
| name = name_str | |
| elif record.nameID == FONT_SPECIFIER_FAMILY_ID and not family: | |
| family = name_str | |
| if name and family: break | |
| return name, family | |
| tt = ttLib.TTFont(sys.argv[1]) | |
| print("Name: %s Family: %s" % shortName(tt)) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Hello! I hope you're well. I wanted to tell you something that has me a little confused. I have bought many Huawei fonts in the store, but they give them to me in TTF format instead of HWT. I have another device, it's a Samsung, and I would like to use those fonts with the Monofonts app, but it doesn't seem to recognize it. For example: 'encrypted_mundomaravilloso.ttf' (which is the name of the Huawei font). Do you have any idea how I could fix it? I thank you very much for your help! 😊 I would love to be able to use Huawei fonts on the Samsung.