# python-cfonts **Repository Path**: mamh-mixed/python-cfonts ## Basic Information - **Project Name**: python-cfonts - **Description**: https://github.com/mamh-mixed/python-cfonts - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2022-05-31 - **Last Updated**: 2024-07-06 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ``` ██████╗ ███████╗ ██████╗ ███╗ ██╗ ████████╗ ███████╗ ██╔════╝ ██╔════╝ ██╔═══██╗ ████╗ ██║ ╚══██╔══╝ ██╔════╝ ██║ █████╗ ██║ ██║ ██╔██╗ ██║ ██║ ███████╗ ██║ ██╔══╝ ██║ ██║ ██║╚██╗██║ ██║ ╚════██║ ╚██████╗ ██║ ╚██████╔╝ ██║ ╚████║ ██║ ███████║ ╚═════╝ ╚═╝ ╚═════╝ ╚═╝ ╚═══╝ ╚═╝ ╚══════╝ ``` ![Tests](https://github.com/frostming/python-cfonts/workflows/Tests/badge.svg) _This is a Python port of [cfonts](https://github.com/dominikwilkowski/cfonts). Thanks for the original code and beautiful console fonts!_ > **NOTE:** This project supports Python 3.6+ ## Installation ```bash $ pip install python-cfonts ``` ## Usage [Documentation](https://python-cfonts.fming.dev/) Command line interface: ```bash 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. ``` ![](https://python-cfonts.fming.dev/_images/example.png) Or generate the fonts pragramatically: ```python 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](https://github.com/frostming/pdm), first install it: ```bash pipx install pdm ``` Then, install a dependencies: ```bash pdm install -d ``` Run tests: ```bash $ pdm run pytest tests ``` ## License The project is originated by [@dominikwilkowski](https://github.com/dominikwilkowski), under GPLv2 license. Ported by [@frostming](https://github.com/frostming), under MIT license. See [LICENSE](/LICENSE) for details ## Changelog - **v1.5.2** Fix the RGB color codes for truecolor system. - **v1.5.1** - Fix the truecolor display on Windows. - Enable truecolor by default for Windows Terminal. - Add type hints for the codebase. - **v1.5.0** Officially drop support of Python 2.7 - **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.