ascii-dotter
Turn an image into "ASCII Art" using Braille Unicode characters.
Preamble
As I write this section of my README, it is 11/6/2021. I worked on this project initially almost four years ago, in 2018. It was the first project I was proud of. However, looking at it on my GitHub pinned now brings me a great amount of shame. I no longer like how I handled this program. I violated (albiet at the time, unknowlingly) many software engineering philosophies, and incidentally followed many design anti-patterns. I decided in a energy-drink fueled haze that I would rewrite the entire program, base-up, to the best of my current ability. After this, I hope to create something I can once again be proud of. Then again, in three years time, I might just rewrite it again.
Getting Started
Setup
You may install the project using python3 setup.py install or ./setup.py install.
Requirements
This project was built using Python 3.8.10. A terminal that supports unicode characters is recommended, but not required. Please see requirements.txt for module requirements.
Running
After installation, the program may be run directly by using asciidotter, or through the module using python3 -m AsciiDotter.
usage: asciidotter [-h] [--output OUTPUT] [--tolerance TOLERANCE] [--method METHOD] [--limit LIMIT] [--invert] input
-h: Displays help message.
--output, -o: Output text stream. Optional. Default is sys.stdout.
--tolerance, -t: Float in range [0.0, 1.0]. Any pixel with a luminance value greater than or equal to this value will be plotted. Default is 0.5.
--method, -m: Which method to use for determining the luminance value of a pixel. Luminance values are mapped to [0.0, 1.0]. Methods are as follows:
"AVERAGE", "A": Calculate luminance by taking average of r, g, b.
"RELATIVE", "R": Calculate luminance by using the [relative luminance](https://en.wikipedia.org/wiki/Relative_luminance) formula. Default.
"VALUE", "V": Calculate luminance by calculating the value of the pixel in HSV space.
"WEIGHTED", "W": Calculate luminance by summing the r, g, and b values weighted by their wavelengths.
--limit, -l: Character limit. Optional. Defaults to 1,048,576.
--invert, -i: Invert output image. Optional.
input: Binary input stream of image. Required.
Authors
- Will Ciesialka
License
This project is licensed under the GNU GENERAL PUBLIC LICENSE VERSION 3. See LICENSE for details.
Release files for AsciiDotter 2.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| AsciiDotter-2.1.0.tar.gz | 7.6 kB | Details |
Built distributions (wheels)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| AsciiDotter-2.1.0-py3.8.egg | Legacy Egg format | - | - | Details |
| AsciiDotter-2.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 64.7 kB
Release files / AsciiDotter-2.1.0.tar.gz
| Download URL | AsciiDotter-2.1.0.tar.gz |
|---|---|
| Size | 7.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
2ded13cfdb4d14306e1915e36f68be6c5e6b83f170dbae931e7b1acc80ce33da
|
|
BLAKE2b-256 checksum How to use checksums |
8f61e83b93f48d1aa302009bac40844e771882fc45d201b1278b1043fbfa1df8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
|
Release files / AsciiDotter-2.1.0-py3.8.egg
| Download URL | AsciiDotter-2.1.0-py3.8.egg |
|---|---|
| Size | 30.8 kB |
| Tags | Egg |
|
SHA-256 checksum How to use checksums |
323f41adcf25dfb27b6ffb43c78e44b389e473e83383b918fb2bb7c8fc40a5cc
|
|
BLAKE2b-256 checksum How to use checksums |
ce4a8bf066b65205627100f601c7744fef3500dde3a8960cc21d16fe3b5b3a96
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
|
Release files / AsciiDotter-2.1.0-py3-none-any.whl
| Download URL | AsciiDotter-2.1.0-py3-none-any.whl |
|---|---|
| Size | 26.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
b69ae7589e2680b728cb13c1b983382cca4804bff36a53aa0c6234c9091b1e88
|
|
BLAKE2b-256 checksum How to use checksums |
bf9281705b738ef3f0765138c1b6306404e136c430670182ee08927c210f4356
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.4.2 requests/2.22.0 setuptools/45.2.0 requests-toolbelt/0.8.0 tqdm/4.30.0 CPython/3.8.10
|