aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xlab/svgs2ttf9
1 files changed, 7 insertions, 2 deletions
diff --git a/lab/svgs2ttf b/lab/svgs2ttf
index 3ea045e..bd2425a 100755
--- a/lab/svgs2ttf
+++ b/lab/svgs2ttf
@@ -26,10 +26,12 @@ try:
except NameError:
unicode = str
+
def loadConfig(filename='font.json'):
with open(filename) as f:
return json.load(f)
+
def setProperties(font, config):
props = config['props']
lang = props.pop('lang', 'English (US)')
@@ -50,6 +52,7 @@ def setProperties(font, config):
for t in config.get('sfnt_names', []):
font.appendSFNTName(str(t[0]), str(t[1]), unicode(t[2]))
+
def addGlyphs(font, config):
for k, v in config['glyphs'].items():
g = font.createMappedChar(int(k, 0))
@@ -57,7 +60,8 @@ def addGlyphs(font, config):
src = '%s.svg' % k
if not isinstance(v, dict):
v = {'src': v or src}
- src = '%s%s%s' % (config.get('input', '.'), os.path.sep, v.pop('src', src))
+ src = '%s%s%s' % (config.get('input', '.'),
+ os.path.sep, v.pop('src', src))
g.importOutlines(src, IMPORT_OPTIONS)
g.removeOverlap()
# Copy attributes
@@ -67,6 +71,7 @@ def addGlyphs(font, config):
v2 = tuple(v2)
setattr(g, k2, v2)
+
def main(config_file):
config = loadConfig(config_file)
os.chdir(os.path.dirname(config_file) or '.')
@@ -81,6 +86,6 @@ if __name__ == '__main__':
if len(sys.argv) > 1:
main(sys.argv[1])
else:
- sys.stderr.write("\nUsage: %s something.json\n" % sys.argv[0] )
+ sys.stderr.write("\nUsage: %s something.json\n" % sys.argv[0])
# vim: set filetype=python: