TrueType font name extractor

Found in archives. This short script can extract family name and style out of a True Type Font file. Useful for building a catalog of fonts and such.

#!/usr/bin/python
#
# Get font family and style from .ttf files
# Paul Philippov, paul@ppds.ws, 2008-10-05
#

import sys
import os.path
from PIL import ImageFont

if len(sys.argv) <= 1:
  print "Usage: %s <fontname>" % sys.argv[0]
  sys.exit()

filename = sys.argv[1]
if not os.path.exists(filename) or not os.path.isfile(filename):
  print "Error: %s is not a file" % filename
  sys.exit()

try:
  f = ImageFont.truetype(filename, 1)
except:
  print "Error: %s is not a Truetype font" % filename
  sys.exit()

print f.font.family + " " + f.font.style

Published on July 30, 2009 (about 10 years ago)

Article tags: font, python, script

Comments (4)

fok almost 10 years ago

Very useful! Thanks!
I made a bash script using this as basis to organize my fonts.

Adr almost 10 years ago

Please mr. fok
Could you post your bash script somewhere on the web please?

Thanks

Cool site by the way

JCP over 5 years ago

Tested with 2600 ttf files and worked like a charm! Thumbs up! Thank you for sharing your code!!!

karim reefat over 4 years ago

Thanks you very much for sharing the code, i use it to get the names of the my windows fonts and it work great.