def enumerate_fonts(self):
"""
Returns a JSON-encoded object containing the installed fonts.
"""
from applications.woff_info import woff_info
fonts = resource_listdir(
'applications', '/static/fonts')
#fonts = os.listdir(os.path.join(getsettings('BASE_DIR'), 'static/terminal/fonts'))
font_list = []
for font in fonts:
if not font.endswith('.woff'):
continue
font_path = resource_filename(
'applications', '/static/fonts/%s' % font)
#font_path = os.path.join(os.path.join(getsettings('BASE_DIR'), 'static/terminal/fonts'), font)
font_info = woff_info(font_path)
if "Font Family" not in font_info:
self.ws.logger.error(_(
"Bad font in fonts dir (missing Font Family in name "
"table): %s" % font))
continue # Bad font
if font_info["Font Family"] not in font_list:
font_list.append(font_info["Font Family"])
message = {'terminal:fonts_list': {'fonts': font_list}}
self.write_message(message)
#@require(policies('terminal'))
评论列表
文章目录