コード例 #1
0
        g.update()

    f.update()

    if inShell:
        timeString = time.strftime("%Y-%m-%d_%H%M%S", time.localtime())
        fileName = '%s_boxes.ufo' % timeString
        # fileName = 'boxes.ufo'
        f.lib['public.glyphOrder'] = generatedGlyphs
        outputPath = os.sep.join((os.path.curdir, fileName))
        f.save(outputPath)
        print '\nFind your UFO file at %s' % os.path.abspath(outputPath)

    if inFL:
        fl.UpdateFont(fl.ifont)

    if inRF:
        # Modifying the glyph order, so it looks like the glyphs
        # have been appended at the end of the font.
        glyphOrder = f.lib['public.glyphOrder']
        if not set(generatedGlyphs) <= set(glyphOrder):
            oldGlyphOrder = [g for g in glyphOrder if g not in generatedGlyphs]
            newGlyphOrder = oldGlyphOrder + generatedGlyphs
            f.glyphOrder = newGlyphOrder
            f.lib['public.glyphOrder'] = newGlyphOrder

    if inGlyphs:
        f._object.font.enableUpdateInterface()

    print '\nDone.'
コード例 #2
0
        g.update()

    f.update()

    if inShell:
        timeString = time.strftime("%Y-%m-%d_%H%M%S", time.localtime())
        fileName = '%s_boxes.ufo' % timeString
        # fileName = 'boxes.ufo'
        f.lib['public.glyphOrder'] = generatedGlyphs
        outputPath = os.sep.join((os.path.curdir, fileName))
        f.save(outputPath)
        print '\nFind your UFO file at %s' % os.path.abspath(outputPath)

    if inFL:
        fl.UpdateFont(fl.ifont)

    if inRF:
        # Modifying the glyph order, so it looks like the glyphs
        # have been appended at the end of the font.
        glyphOrder = f.lib['public.glyphOrder']
        if not set(generatedGlyphs) <= set(glyphOrder):
            oldGlyphOrder = [g for g in glyphOrder if g not in generatedGlyphs]
            newGlyphOrder = oldGlyphOrder + generatedGlyphs
            f.glyphOrder = newGlyphOrder
            f.lib['public.glyphOrder'] = newGlyphOrder

    if inGlyphs:
        Font.enableUpdateInterface()

    print '\nDone.'
コード例 #3
0
	def btnApplyCallback (self, info):
		font = CurrentFont()
		charsetName = self.w.cbCharsetsList.get()
		font.lib['public.glyphOrder'] = getCharacterSets()[charsetName]
		font.glyphOrder = font.lib['public.glyphOrder']
		print 'CharacterSet switched to', charsetName
コード例 #4
0
ファイル: rapidFont.py プロジェクト: davelab6/rapidfont
        I.rightMargin = ucStraight.rightMargin
        I.leftMargin = ucStraight.rightMargin
        
        L = font['L']
        L.appendComponent('ucStraight',(weight+offset,0))
        L.appendComponent('ucCrossbar',(weight+offset+(weight/2),hweight),(0.9,1))
        L.rightMargin = ucStraight.rightMargin -15
        L.leftMargin = ucStraight.rightMargin
        
        O = font['O']
        O.appendComponent('ucRound',(roundWidth,capheight),(-1,-1))
        O.appendComponent('ucRound',(roundWidth+offset,0))
        O.rightMargin = font['ucRound'].rightMargin
        O.leftMargin = font['ucRound'].rightMargin

        T = font['T']
        T.appendComponent('ucStraight')
        T.appendComponent('ucCrossbar',(ucStraightWidth/2 - ucCrossWidth*1.3/2,capheight),(1.3,1))       
        T.rightMargin = 0
        T.leftMargin = 0
        
        
        for glyph in buildG:
            for comp in font[glyph].components:
                comp.decompose()
            for cont in font[glyph]:
                cont.clockwise = True
        
        mySorted = buildG + meta
        font.glyphOrder = mySorted
        print 'Font created.'
コード例 #5
0
# http://github.com/typedev

from robofab.world import CurrentFont

s = 'space exclam quotesingle quotedbl numbersign dollar percent ampersand parenleft parenright asterisk plus comma hyphen period slash zero one two three four five six seven eight nine colon semicolon less equal greater question at A B C D E F G H I J K L M N O P Q R S T U V W X Y Z bracketleft backslash bracketright asciicircum underscore grave a b c d e f g h i j k l m n o p q r s t u v w x y z braceleft bar braceright asciitilde exclamdown cent sterling currency yen brokenbar section dieresis copyright ordfeminine guillemotleft logicalnot registered macron degree plusminus twosuperior threesuperior acute mu paragraph periodcentered cedilla onesuperior ordmasculine guillemotright onequarter onehalf threequarters questiondown Agrave Aacute Acircumflex Atilde Adieresis Aring AE Ccedilla Egrave Eacute Ecircumflex Edieresis Igrave Iacute Icircumflex Idieresis Eth Ntilde Ograve Oacute Ocircumflex Otilde Odieresis multiply Oslash Ugrave Uacute Ucircumflex Udieresis Yacute Thorn germandbls agrave aacute acircumflex atilde adieresis aring ae ccedilla egrave eacute ecircumflex edieresis igrave iacute icircumflex idieresis eth ntilde ograve oacute ocircumflex otilde odieresis divide oslash ugrave uacute ucircumflex udieresis yacute thorn ydieresis dotlessi circumflex caron breve dotaccent ring ogonek tilde hungarumlaut quoteleft quoteright minus u00A0|00A0 afii10017 afii10018 afii10019 afii10020 afii10021 afii10022 afii10023 afii10024 afii10025 afii10026 afii10027 afii10028 afii10029 afii10030 afii10031 afii10032 afii10033 afii10034 afii10035 afii10036 afii10037 afii10038 afii10039 afii10040 afii10041 afii10042 afii10043 afii10044 afii10045 afii10046 afii10047 afii10048 afii10049 afii10065 afii10066 afii10067 afii10068 afii10069 afii10070 afii10071 afii10072 afii10073 afii10074 afii10075 afii10076 afii10077 afii10078 afii10079 afii10080 afii10081 afii10082 afii10083 afii10084 afii10085 afii10086 afii10087 afii10088 afii10089 afii10090 afii10091 afii10092 afii10093 afii10094 afii10095 afii10096 afii10097 afii10051 afii10099 afii10050 afii10055 afii10052 afii10100 afii10103 afii10098 afii10057 afii10053 afii10101 afii10056 afii10104 afii10058 afii10106 afii10059 afii10107 afii10105 afii10054 afii10060 afii10108 afii10061 afii10109 afii10102 afii10062 afii10110 afii10145 afii10193 afii61352'

ng = s.split(' ')

font = CurrentFont()

for gname in ng:
    if gname not in font.keys():
        d = RGlyph()
        font[gname] = d
        missglyph = font[gname]
        missglyph.width = 0
        missglyph.update()

font.update()

font.testInstall()

glyphOrder = font.glyphOrder

for gname in ng:
    if font[gname].width == 0:
        font.removeGlyph(gname)

font.glyphOrder = glyphOrder
font.update()
コード例 #6
0
from robofab.world import CurrentFont


s = 'space exclam quotesingle quotedbl numbersign dollar percent ampersand parenleft parenright asterisk plus comma hyphen period slash zero one two three four five six seven eight nine colon semicolon less equal greater question at A B C D E F G H I J K L M N O P Q R S T U V W X Y Z bracketleft backslash bracketright asciicircum underscore grave a b c d e f g h i j k l m n o p q r s t u v w x y z braceleft bar braceright asciitilde exclamdown cent sterling currency yen brokenbar section dieresis copyright ordfeminine guillemotleft logicalnot registered macron degree plusminus twosuperior threesuperior acute mu paragraph periodcentered cedilla onesuperior ordmasculine guillemotright onequarter onehalf threequarters questiondown Agrave Aacute Acircumflex Atilde Adieresis Aring AE Ccedilla Egrave Eacute Ecircumflex Edieresis Igrave Iacute Icircumflex Idieresis Eth Ntilde Ograve Oacute Ocircumflex Otilde Odieresis multiply Oslash Ugrave Uacute Ucircumflex Udieresis Yacute Thorn germandbls agrave aacute acircumflex atilde adieresis aring ae ccedilla egrave eacute ecircumflex edieresis igrave iacute icircumflex idieresis eth ntilde ograve oacute ocircumflex otilde odieresis divide oslash ugrave uacute ucircumflex udieresis yacute thorn ydieresis dotlessi circumflex caron breve dotaccent ring ogonek tilde hungarumlaut quoteleft quoteright minus u00A0|00A0 afii10017 afii10018 afii10019 afii10020 afii10021 afii10022 afii10023 afii10024 afii10025 afii10026 afii10027 afii10028 afii10029 afii10030 afii10031 afii10032 afii10033 afii10034 afii10035 afii10036 afii10037 afii10038 afii10039 afii10040 afii10041 afii10042 afii10043 afii10044 afii10045 afii10046 afii10047 afii10048 afii10049 afii10065 afii10066 afii10067 afii10068 afii10069 afii10070 afii10071 afii10072 afii10073 afii10074 afii10075 afii10076 afii10077 afii10078 afii10079 afii10080 afii10081 afii10082 afii10083 afii10084 afii10085 afii10086 afii10087 afii10088 afii10089 afii10090 afii10091 afii10092 afii10093 afii10094 afii10095 afii10096 afii10097 afii10051 afii10099 afii10050 afii10055 afii10052 afii10100 afii10103 afii10098 afii10057 afii10053 afii10101 afii10056 afii10104 afii10058 afii10106 afii10059 afii10107 afii10105 afii10054 afii10060 afii10108 afii10061 afii10109 afii10102 afii10062 afii10110 afii10145 afii10193 afii61352'

ng = s.split(' ')

font = CurrentFont()

for gname in ng:
    if gname not in font.keys():
        d = RGlyph()
        font[gname] = d
        missglyph = font[gname]
        missglyph.width = 0
        missglyph.update()

font.update()

font.testInstall()

glyphOrder = font.glyphOrder

for gname in ng:
    if font[gname].width == 0:
         font.removeGlyph(gname)
         
font.glyphOrder = glyphOrder                
font.update()