Add sudo #fonts and changing #emacs
This commit is contained in:
59
fonts/.fonts/sudo/patch_dotted_zero.py
Executable file
59
fonts/.fonts/sudo/patch_dotted_zero.py
Executable file
@ -0,0 +1,59 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
"""
|
||||
This patch replaces the dotted zero with a regular zero without dot.
|
||||
You will need Python and the Python FontTools
|
||||
from <https://github.com/fonttools/fonttools/> to run this.
|
||||
"""
|
||||
|
||||
try:
|
||||
from fontTools.ttLib import TTFont
|
||||
have_fonttools = True
|
||||
except:
|
||||
have_fonttools = False
|
||||
|
||||
from os.path import join
|
||||
|
||||
files = [
|
||||
"Sudo.ttf",
|
||||
"Sudo-Italic.ttf",
|
||||
"Sudo-Bold.ttf",
|
||||
"Sudo-BoldItalic.ttf",
|
||||
|
||||
#join(r"Web Fonts", "SudoWeb.woff"),
|
||||
#join(r"Web Fonts", "SudoWeb-Italic.woff"),
|
||||
#join(r"Web Fonts", "SudoWeb-Bold.woff"),
|
||||
#join(r"Web Fonts", "SudoWeb-BoldItalic.woff"),
|
||||
]
|
||||
|
||||
|
||||
def patch_cmap(font):
|
||||
#print " Patching CMAP ..."
|
||||
c = font["cmap"]
|
||||
for table in c.tables:
|
||||
#print " Patching format %i subtable ..." % table.format,
|
||||
if 0x30 in table.cmap:
|
||||
table.cmap[0x30] = "zero.zero"
|
||||
#print "OK."
|
||||
else:
|
||||
pass
|
||||
#print "glyph not found."
|
||||
|
||||
|
||||
def patch(filepath):
|
||||
print "Patching '%s' ..." % filepath,
|
||||
base, ext = filepath.rsplit(".", 1)
|
||||
font = TTFont(filepath)
|
||||
patch_cmap(font)
|
||||
font.save("%s_patch.%s" % (base, ext))
|
||||
font.close()
|
||||
print "OK"
|
||||
|
||||
if have_fonttools:
|
||||
for f in files:
|
||||
patch(f)
|
||||
print "\nThe web fonts were not patched. For the web fonts, please activate the OpenType 'zero' feature in your CSS:"
|
||||
print ' font-feature-settings: "zero";'
|
||||
else:
|
||||
print "Please install the Python FontTools from <https://github.com/fonttools/fonttools/> first."
|
||||
Reference in New Issue
Block a user