|
## termimg — Terminal Image Rendering for Nim
|
|
##
|
|
## Picture-perfect image rendering in the native terminal. Renders RGBA
|
|
## pixel data using the highest-fidelity protocol the terminal supports.
|
|
##
|
|
## ## Supported Protocols
|
|
##
|
|
## | Protocol | Fidelity | Mechanism |
|
|
## |------------- |-----------------------|-------------------------------------------------|
|
|
## | kitty | Exact pixels | RGBA transmitted in base64 chunks |
|
|
## | iterm2 | Exact | Raw file bytes via OSC 1337 inline image |
|
|
## | sixel | 256-color palette | DCS sixel bands with RLE compression |
|
|
## | quarterblock | 4 sub-cells per cell | Unicode quadrant blocks with 24-bit truecolor |
|
|
## | halfblock | 2 vertical per cell | Unicode ▀ with 24-bit foreground/background |
|
|
##
|
|
## ## Usage
|
|
##
|
|
## ```nim
|
|
## import termimg
|
|
##
|
|
## let caps = detectCapabilities()
|
|
## let opts = defaultOptions()
|
|
## let output = renderImageRgba(rgbaPixels, 640, 480, caps, opts)
|
|
## stdout.write(output)
|
|
## ```
|
|
|
|
import termimg/types, termimg/capabilities, termimg/renderer, termimg/scaling
|
|
import termimg/kitty, termimg/sixel, termimg/iterm2, termimg/halfblock, termimg/quarterblock
|
|
|
|
export termimg.types, termimg.capabilities, termimg.renderer, termimg.scaling
|
|
export termimg.kitty, termimg.sixel, termimg.iterm2, termimg.halfblock, termimg.quarterblock
|