本文整理汇总了Python中mojo.roboFont.CurrentFont.has_key方法的典型用法代码示例。如果您正苦于以下问题:Python CurrentFont.has_key方法的具体用法?Python CurrentFont.has_key怎么用?Python CurrentFont.has_key使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类mojo.roboFont.CurrentFont
的用法示例。
在下文中一共展示了CurrentFont.has_key方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: apply_callback
# 需要导入模块: from mojo.roboFont import CurrentFont [as 别名]
# 或者: from mojo.roboFont.CurrentFont import has_key [as 别名]
def apply_callback(self, sender):
boolstring = [ False, True ]
f = CurrentFont()
if f is not None:
if len(f.selection) > 0:
# print info
print 'changing glyph name suffixes...\n'
print '\told suffix: %s' % self._old_suffix
print '\tnew suffix: %s' % self._new_suffix
print '\toverwrite: %s' % boolstring[self._overwrite]
print
# batch change glyph names
for glyph_name in get_glyphs(f):
g = f[glyph_name]
# get glyphs with matching suffix
if has_suffix(g, self._old_suffix):
# make new name
if len(self._new_suffix) > 0:
_new_name = change_suffix(g, self._old_suffix, self._new_suffix)
else:
_new_name = change_suffix(g, self._old_suffix, None)
# if new name not in font, rename
if not f.has_key(_new_name):
print '\trenaming %s to %s...' % (glyph_name, _new_name)
g.name = _new_name
# new name in font
else:
# overwrite existing
if self._overwrite:
print "\toverwriting '%s' with '%s'" % (_new_name, glyph_name)
f.removeGlyph(_new_name)
f.update()
g.name = _new_name
g.update()
# do not overwrite
else:
print "\t'%s' already exists in font, skipping '%s'" % (_new_name, glyph_name)
# glyph name does not have suffix
else:
pass
# done glyph
# done font
f.update()
print
print '...done.\n'
# no glyph selected
else:
print 'please select one or more glyphs before running the script.\n'
# no glyph selected
else:
print 'please open a font first.\n'
pass
示例2: set_element_callback
# 需要导入模块: from mojo.roboFont import CurrentFont [as 别名]
# 或者: from mojo.roboFont.CurrentFont import has_key [as 别名]
def set_element_callback(self, sender):
font = CurrentFont()
if font is not None:
# get parameters
shape = self.shapes[self.w.shape.get()]
scale = float(self.w.spinner_size.value.get())
magic = float(self.w.spinner_magic.value.get())
# create element glyph
if not font.has_key(self.element_glyph):
font.newGlyph(self.element_glyph)
# draw element shape
font[self.element_glyph].prepareUndo('set element')
set_element(font, scale, type=shape, magic=magic, element_=self.element_glyph)
font[self.element_glyph].performUndo()
# no font open
else:
print no_font_open
示例3: apply_callback
# 需要导入模块: from mojo.roboFont import CurrentFont [as 别名]
# 或者: from mojo.roboFont.CurrentFont import has_key [as 别名]
def apply_callback(self, sender):
# get font
f = CurrentFont()
if f is not None:
glyph_names = get_glyphs(f)
if len(glyph_names) > 0:
boolstring = [ False, True ]
# get parameters
self.old_suffix = self.w.old_suffix_value.get()
self.new_suffix = self.w.new_suffix_value.get()
self.overwrite = self.w.overwrite_checkbox.get()
# print info
print 'changing glyph name suffixes...\n'
print '\told suffix: %s' % (self.old_suffix)
print '\tnew suffix: %s' % (self.new_suffix)
print '\toverwrite: %s' % boolstring[self.overwrite]
print
# batch change glyph names
for glyph_name in glyph_names:
g = f[glyph_name]
# get glyphs with matching suffix
if has_suffix(g, self.old_suffix):
# switch suffixes : one.osf -> one.onum
if len(self.old_suffix) > 0 and len(self.new_suffix) > 0:
new_name = change_suffix(g, self.old_suffix, self.new_suffix)
# remove suffix : one.osf -> one
elif len(self.old_suffix) > 0 and len(self.new_suffix) == 0:
new_name = change_suffix(g, self.old_suffix, None)
# add suffix : one -> one.onum
elif len(self.old_suffix) == 0 and len(self.new_suffix) > 0:
new_name = '%s.%s' % (glyph_name, self.new_suffix)
else:
new_name = glyph_name
# new name not in font (rename)
if new_name != glyph_name:
if not f.has_key(new_name):
print '\trenaming %s to %s...' % (glyph_name, new_name)
g.name = new_name
# new name in font
else:
# overwrite
if self._overwrite:
print "\toverwriting '%s' with '%s'" % (new_name, glyph_name)
f.removeGlyph(_new_name)
f.update()
g.name = new_name
g.update()
# do not overwrite
else:
print "\t'%s' already exists in font, skipping '%s'" % (new_name, glyph_name)
# glyph does not have suffix
else:
pass
# done glyph
# done font
f.update()
print
print '...done.\n'
# no glyph selected
else:
print no_glyph_selected
# no font open
else:
print no_font_open
pass