当前位置: 首页>>代码示例>>Python>>正文


Python Figlet.getFonts方法代码示例

本文整理汇总了Python中pyfiglet.Figlet.getFonts方法的典型用法代码示例。如果您正苦于以下问题:Python Figlet.getFonts方法的具体用法?Python Figlet.getFonts怎么用?Python Figlet.getFonts使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在pyfiglet.Figlet的用法示例。


在下文中一共展示了Figlet.getFonts方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: main

# 需要导入模块: from pyfiglet import Figlet [as 别名]
# 或者: from pyfiglet.Figlet import getFonts [as 别名]
def main():
    parser = OptionParser(version=__version__)

    parser.add_option('-s', '--show', action='store_true', default=False,
                      help='pause at each failure and compare output '
                           '(default: %default)')

    opts, args = parser.parse_args()

    f = Figlet()

    ok = 0
    fail = 0
    failed = []
    skip = ['runic'] # known bug..

    for font in f.getFonts():
        if font in skip: continue

        f.setFont(font=font)

        outputPyfiglet = f.renderText('foo')

        fontpath = os.path.join('pyfiglet', 'fonts', font)
        if os.path.isfile(fontpath + '.flf'):
            cmd = ('figlet', '-d', 'pyfiglet/fonts', '-f', font, 'foo')
        elif os.path.isfile(fontpath + '.tlf'):
            cmd = ('toilet', '-d', 'pyfiglet/fonts', '-f', font, 'foo')
        else:
            raise Exception('Missing font file: '+fontpath)

        p = Popen(cmd, bufsize=1,stdout=PIPE)
        outputFiglet = p.communicate()[0].decode('ascii', 'replace')

        if outputPyfiglet == outputFiglet:
            print('[OK] %s' % font)
            ok += 1
            continue

        print('[FAIL] %s' % font)
        fail += 1
        failed.append(font)

        if opts.show is True:
            print('[PYTHON] *** %s\n\n' % font)
            dump(outputPyfiglet)
            print('[FIGLET] *** %s\n\n' % font)
            dump(outputFiglet)
            raw_input()

    print('OK = %d, FAIL = %d' % (ok, fail))
    if len(failed) > 0:
        print('FAILED = %s' % repr(failed))

    return 0
开发者ID:Mondego,项目名称:pyreco,代码行数:57,代码来源:allPythonContent.py

示例2: run

# 需要导入模块: from pyfiglet import Figlet [as 别名]
# 或者: from pyfiglet.Figlet import getFonts [as 别名]
    def run(self, *args):
        """!ascii: Usage: !ascii (_FontName_) Your Text / !ascii ?Fonts
        Posts custom ascii text art into chat.
        ?Fonts will send you a list of fonts via pm.
        Use custom fonts like this: !ascii _starwars_ Woooo Ascii Art!
        ___"""
        font = 'slant'
        try:
            chatid = int(args[1][0])
        except:
            print "FAILED"
            return 0
        try:
            if args[0].upper() == "?FONTS":
                f = Figlet(font)
                fontlist = "Available fonts:\n"
                fontlist += formatList(f.getFonts())
                self.parent.librewired.sendPrivateMsg(int(args[1][1]), fontlist)
                return 0
        except:
            return "Usage: !ascii (%FontName%) Text / !ascii ?Fonts"

        param = regmatch(args[0], '_')
        if param:
            font = param
            text = regexclude(args[0], '_')
            if not text:
                return 0
        else:
            text = args[0]

        if not len(text):
            return "Usage: !ascii (%FontName%) Text / !ascii ?Fonts"
        asciitext = 0
        try:
            f = Figlet(font)
            asciitext = f.renderText(text)
        except FontNotFound:
            return "Unknown font: " + str(font)
        if asciitext:
            lines = asciitext.split('\n')
            sswired = chr(31).join(lines)
            for aline in lines:
                if len(aline.strip()):
                    self.parent.librewired.sendChat(chatid, chr(14) + aline)
            self.parent.librewired.sendChat(chatid, chr(129) + sswired)
        return 0
开发者ID:docmeth02,项目名称:rewired-bot,代码行数:49,代码来源:ascii.py

示例3: Test

# 需要导入模块: from pyfiglet import Figlet [as 别名]
# 或者: from pyfiglet.Figlet import getFonts [as 别名]
class Test(object):
    def __init__(self, opts):
        self.opts = opts
        self.ok = 0
        self.fail = 0
        self.failed = []
        self.oked = []
        self.skip = ['runic','pyramid','eftifont']  # known bug..
        # Toilet fonts that we don't handle identically, yet
        self.skip += ['emboss', 'emboss2', 'future', 'letter', 'pagga',
                      'smblock', 'smbraille', 'wideterm']
        self.f = Figlet()

    def outputUsingFigletorToilet(self, text, font, fontpath):
        if os.path.isfile(fontpath + '.flf'):
            cmd = ('figlet', '-d', 'pyfiglet/fonts', '-f', font, text)
        elif os.path.isfile(fontpath + '.tlf'):
            cmd = ('toilet', '-d', 'pyfiglet/fonts', '-f', font, text)
        else:
            raise Exception('Missing font file: '+fontpath)

        p = Popen(cmd, bufsize=4096, stdout=PIPE)
        outputFiglet = p.communicate()[0].decode('utf8')
        return outputFiglet

    def validate_font_output(self, font, outputFiglet, outputPyfiglet):
        if outputPyfiglet == outputFiglet:
            win('[OK] %s' % font)
            self.ok += 1
            self.oked.append(font)
            return

        fail('[FAIL] %s' % font)
        self.fail += 1
        self.failed.append(font)
        self.show_result(outputFiglet, outputPyfiglet, font)

    def show_result(self, outputFiglet, outputPyfiglet, font):
        if self.opts.show is True:
            print('[PYTHON] *** %s\n\n' % font)
            dump(outputPyfiglet)
            print('[FIGLET] *** %s\n\n' % font)
            dump(outputFiglet)
            raw_input()

    def check_font(self, text, font):
        if font in self.skip:
            return
        fontpath = os.path.join('pyfiglet', 'fonts', font)

        self.f.setFont(font=font)

        outputPyfiglet = self.f.renderText(text)
        outputFiglet = self.outputUsingFigletorToilet(text, font, fontpath)

        # Our TLF rendering isn't perfect, yet
        strict = os.path.isfile(fontpath + '.flf')
        if not strict:
            outputPyfiglet = outputPyfiglet.strip('\n')
            outputFiglet = outputFiglet.strip('\n')

        self.validate_font_output(font, outputFiglet, outputPyfiglet)


    def check_text(self, text):
        for font in self.f.getFonts():
            self.check_font(text, font)

    def check_result(self):
        print('OK = %d, FAIL = %d' % (self.ok, self.fail))
        if len(self.failed) > 0:
            print('FAILED = %s' % repr(self.failed))

        return self.failed, self.oked
开发者ID:orangepole,项目名称:pyfiglet,代码行数:76,代码来源:test.py


注:本文中的pyfiglet.Figlet.getFonts方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。