mirror of
https://github.com/waveplate/img2irc.git
synced 2024-11-21 15:06:39 +00:00
convert images to halfblock ansi or irc, with a bunch of post-processing filters
.cargo | ||
src | ||
.gitignore | ||
Cargo.toml | ||
LICENSE | ||
README.md |
img2irc (1.0.5)
img2irc is a utility which converts images to half or quarterblock irc/ansi art, with a lot of post-processing filters
halfblock means that each row will contain two rows worth of pixels, effectively doubling the vertical resolution
quarterblock (experimental) means that each row will contain two rows worth of pixels, and each column will contain two columns worth of pixels, quadrupling the resolution
the irc
mode has 99 colours, the ansi
mode has 256, ansi24
has 16777216
how to install
-
download the linux binary
statically linked with musl, works on all x86_64 linux platforms
cd /tmp wget https://github.com/waveplate/img2irc/releases/download/v1.0.4/img2irc-1.0.4-linux-x86_64.tar.gz sudo tar -xzf img2irc-1.0.4-linux-x86_64.tar.gz -C /usr/local/bin --strip-components=1 img2irc-1.0.4/img2irc rm -rf img2irc-1.0.4-linux-x86_64.tar.gz
-
install with
yay
(arch linux)if you like this project, i would appreciate you giving it a vote on the aur!
yay -S img2irc
-
install with
cargo
cargo install img2irc-rs
the binary will be installed to
~/.cargo/bin/img2irc
usage
img2irc <URL or PATH> [OPTIONS]
option | description | default value |
---|---|---|
<IMAGE> |
image url or file path | none |
--irc |
irc render type | true |
--ansi |
8-bit ansi render type | false |
--ansi24 |
24-bit ansi render type | false |
--qb |
use quarterblocks (experimental) | false |
-w, --width <WIDTH> |
output image width in columns | 50 |
-b, --brightness=<BRIGHTNESS> |
adjust brightness (-255 to 255) | 0 |
-c, --contrast=<CONTRAST> |
adjust contrast (-255 to 255) | 0 |
-s, --saturation=<SATURATION> |
adjust saturation (-255 to 255) | 0 |
-H, --hue <HUE> |
rotate hue (0 to 360) | 0 |
-g, --gamma <GAMMA> |
adjust gamma (0 to 255) | 0 |
--dither <DITHER> |
dithering (1 to 8) | 0 |
--pixelize <PIXELIZE> |
pixelize pixel size | 0 |
--gaussian-blur <GAUSSIAN_BLUR> |
gaussian blur radius | 0 |
--oil <OIL> |
oil ("[RADIUS],[INTENSITY]") | |
--grayscale |
converts image to black and white | |
--nograyscale |
exclude grayscale colours from the palette | |
--halftone |
made up of small dots creating a continuous-tone illusion | |
--sepia |
brownish, aged appearance like old photographs | |
--normalize |
adjusts brightness and contrast for better image quality | |
--noise |
random variations in brightness and color like film grain | |
--emboss |
gives a raised, 3d appearance | |
--box-blur |
smoothed appearance like frosted glass | |
--identity |
no modifications, unchanged image | |
--laplace |
enhances edges and boundaries in an image | |
--noise-reduction |
reduces noise for a cleaner, clearer image | |
--sharpen |
increases clarity and definition, making edges and details more distinct | |
--cali |
cool blue tone with increased contrast | |
--dramatic |
high contrast and vivid colors for a dramatic effect | |
--firenze |
warm, earthy tones reminiscent of tuscan landscapes | |
--golden |
warm, golden glow like sunset light | |
--lix |
high-contrast black and white appearance with increased sharpness | |
--lofi |
low-fidelity, retro appearance like old photographs or film | |
--neue |
clean, modern appearance with neutral colors and simple design | |
--obsidian |
dark, monochromatic appearance with black and gray shades | |
--pastel-pink |
soft, delicate pink tint like pastel colors | |
--ryo |
bright, high-contrast appearance with vivid colors and sharp details | |
--invert |
colors are inverted, opposite on the color wheel | |
--frosted-glass |
blurred, frosted appearance as if viewed through semi-transparent surface | |
--solarize |
strange, otherworldly appearance with inverted colors and surreal atmosphere | |
--edge-detection |
highlights edges and boundaries in an image |