Skip to main content

Sexy fonts for the console

Project description

  ██████╗ ███████╗  ██████╗  ███╗   ██╗ ████████╗ ███████╗
 ██╔════╝ ██╔════╝ ██╔═══██╗ ████╗  ██║ ╚══██╔══╝ ██╔════╝
 ██║      █████╗   ██║   ██║ ██╔██╗ ██║    ██║    ███████╗
 ██║      ██╔══╝   ██║   ██║ ██║╚██╗██║    ██║    ╚════██║
 ╚██████╗ ██║      ╚██████╔╝ ██║ ╚████║    ██║    ███████║
  ╚═════╝ ╚═╝       ╚═════╝  ╚═╝  ╚═══╝    ╚═╝    ╚══════╝

Tests

This is a Python port of cfonts. Thanks for the original code and beautiful console fonts!

NOTE: This project supports Python 2.7+ and 3.6+

Installation

$ pip install python-cfonts

Usage

Documentation

Command line interface:

usage: cfonts [-h] [-V]
              [-f {console,block,simpleBlock,simple,3d,simple3d,chrome,huge,grid,pallet,shade,slick}]
              [-c COLORS] [-b BACKGROUND] [-a {left,center,right}]
              [-l LETTER_SPACING] [-z LINE_HEIGHT] [-s] [-m MAX_LENGTH]
              [-g GRADIENT] [-i] [-t]
              text

positional arguments:
  text

optional arguments:
  -h, --help            show this help message and exit
  -V, --version         show program's version number and exit
  -f {console,block,simpleBlock,simple,3d,simple3d,chrome,huge,grid,pallet,shade,slick}, --font {console,block,simpleBlock,simple,3d,simple3d,chrome,huge,grid,pallet,shade,slick}
                        Use to define the font face
  -c COLORS, --colors COLORS
                        Use to define the font color
  -b BACKGROUND, --background BACKGROUND
                        Use to define the background color
  -a {left,center,right}, --align {left,center,right}
                        Use to align the text output
  -l LETTER_SPACING, --letter-spacing LETTER_SPACING
                        Use to define the letter spacing
  -z LINE_HEIGHT, --line-height LINE_HEIGHT
                        Use to define the line height
  -s, --spaceless       Use to define the background color
  -m MAX_LENGTH, --max-length MAX_LENGTH
                        Use to define the amount of maximum characters per
                        line
  -g GRADIENT, --gradient GRADIENT
                        Define gradient colors(separated by comma)
  -i, --independent-gradient
                        Set this option to re-calculate the gradient colors
                        for each new line.Only works in combination with the
                        gradient option.
  -t, --transition-gradient
                        Set this option to generate your own gradients. Each
                        color set in the gradient option will then be
                        transitioned to directly.

Or generate the fonts pragramatically:

from cfonts import render, say

output = render('Hello world', colors=['red', 'yellow'], align='center')
print(output)

Supported Characters

A O 2 2 =
B P 3 3 @
C Q 4 4 #
D R 5 5 $
E S 6 6 %
F T 7 7 &
G U 8 8 (
H V 9 9 )
I W ! ! /
J X ? ? :
K Y . . ;
L Z + + ,
M 0 - - '
N 1 _ _ `` (space)
"

Contributing

python-cfonts is managed by pdm, first install it:

pipx install pdm

Then, install a dependencies:

pdm install -d

Run tests:

$ pdm run pytest tests

License

The project is originated by @dominikwilkowski, under GPLv2 license. Ported by @frostming, under MIT license. See LICENSE for details

Changelog

  • v1.4.0 Officially drop support of Python 3.5
  • v1.3.1 Fix the sdist.
  • v1.3.0 Relicense to MIT.
  • v1.2.0 Add font tiny.
  • v1.1.0 Switch to argparse to drop dependency click.
  • v1.0.0 Support gradient colors and transition gradient.
  • v0.5.0 Add four new fonts and double quote as supported charater.
  • v0.3.1 Fix a bug that the background doesn't span the full width.
  • v0.3.0 Supports Python 2.7.
  • v0.2.0 Initial commit and testing.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for python-cfonts, version 1.4.0
Filename, size File type Python version Upload date Hashes
Filename, size python_cfonts-1.4.0-py2.py3-none-any.whl (33.8 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size python-cfonts-1.4.0.tar.gz (29.2 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page