lukeddy / pyfiglet Goto Github PK
View Code? Open in Web Editor NEWThis project forked from pwaller/pyfiglet
An implementation of figlet written in Python
License: Other
This project forked from pwaller/pyfiglet
An implementation of figlet written in Python
License: Other
All of the documentation and the majority of the work done was by Christopher Jones ([email protected]). Packaged by Peter Waller <[email protected]>, various enhancements by Stefano Rivera <[email protected]>. _|_| _| _| _| _|_|_| _| _| _| _|_|_| _| _|_| _|_|_|_| _| _| _| _| _|_|_|_| _| _| _| _| _|_|_|_| _| _| _| _| _| _| _| _| _| _| _| _| _|_|_| _|_|_| _| _| _|_|_| _| _|_|_| _|_| _| _| _| _| _|_| _|_| SYNOPSIS pyfiglet is a full port of FIGlet (http://www.figlet.org/) into pure python. It takes ASCII text and renders it in ASCII art fonts (like the title above, which is the 'block' font). FAQ Q. Why? WHY?! A. I was bored. Really bored. Q. What the hell does this do that FIGlet doesn't? A. Not much, except allow your font collection to live in one big zipfile. The point of this code is to embed dynamic figlet rendering in Python without having to execute an external program, although it operates on the commandline as well. See below for USAGE details. You can think of this as a python FIGlet driver. Q. Does this support kerning/smushing like FIGlet? A. Yes, yes it does. Output should be identical to FIGlet. If not, this is a bug, which you should report to me! Q. Can I use/modify/redstribute this code? A. Yes, under the terms of the MIT (see LICENSE below). Q. I improved this code, what should I do with it? A. You can submit changes to https://github.com/pwaller/pyfiglet/pulls. If you make changes to the kerning/mushing/rendering portion, PLEASE test it throroughly. The code is fragile and complex. Q. Where did my font go? A. It turns out that we didn't have distribution rights for some of the fonts and so we had to remove them. Full details of the change and why we did it are in pwaller#59. Q. Where can I find these and other fonts? A. Do a quick search for "figlet fonts" on your favourite search engine should give you what you need. However, if you are looking for the specific removed fonts, please go to http://www.jave.de/figlet/fonts.html. USAGE You can use pyfiglet in one of two ways. First, it operates on the commandline as C figlet does and supports most of the same options. Run with --help to see a full list of tweaks. Mostly you will only use -f to change the font. It defaults to standard.flf. tools/pyfiglet 'text to render' Pyfiglet is also a library that can be used in python code: from pyfiglet import Figlet f = Figlet(font='slant') print f.renderText('text to render') If you have found some new fonts that you want to use, you can use the command line interface to install your font file as follows: pyfiglet -L <font file> The font file can be a ZIP file of lots of fonts or just a single font. Depending on how you installed pyfiglet, you may find that you need root access to install the font - e.g. `sudo pyfiglet -L <font file>`. AUTHOR pyfiglet is a *port* of FIGlet, and much of the code is directly translated from the C source. I optimized some bits where I could, but because the smushing and kerning code is so incredibly complex, it was safer and easier to port the logic almost exactly. Therefore, I can't really take much credit for authorship, just translation. The original authors of FIGlet are listed on their website at http://www.figlet.org/. The Python port was done by Christopher Jones <[email protected]> (http://gruntle.org/). It is currently maintained by Peter Waller ([email protected], github:pwaller) The toilet fonts (.tlf) were imported from toilet 0.3-1, by Sam Hocevar <[email protected]>. THANKS github:stefanor for various bug fixes and improvements and the debian packaging. Thanks to anyone who contributed an issue or code on github! LICENSE The MIT License (MIT) Copyright © 2007-2018 Christopher Jones <[email protected]> Stefano Rivera <[email protected]> Peter Waller <[email protected]> And various contributors (see git history). (see LICENSE for full details) CHANGELOG 2018-12-06 0.8.0 #62 Change LICENSE to MIT #61 Provide font installation option (-L) and remove unlicenced fonts from the distribution 2018-10-17 0.7.6 #57 Implement colored print #53 Allow fonts to be specified by path 2016-06-12 0.7.5 #46 Add 100+ fonts from java.de figlet fonts collection v4.0 #48 Include python3 in testing 2015-05-27 0.7.4 #43 Don't leak file handles 2015-04-14 0.7.3 #41 Add newline and text wrapping support 2014-09-14 0.7.2 #35 Add this CHANGELOG #36 Bug fix for #34 (broken --reverse and --flip) (reported "character mapping must return integer, None or unicode") 2014-07-27 0.7.1 #29 Fix for UTF8 regression #31 Add __main__ entry point #32 Pep8 the code and minor refactoring #33 Trove classifiers update 2014-06-02 0.7 #9 Add --list_fonts and --info_font #10 Add tools/pyfiglet_example for listing all fonts #11 Fix the pyfiglet command (had bad python path) #12 Pyflakes fixes #13 Configure Travis Continuous Integration #17 Documentation usage sample fix #19 Enable pyfiglet to use extended ASCII chars #20 Add two cyrillic fonts #21 Python 3 support #27 Code improvements #28 Human readable font list (-l)
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.