diff options
author | bptato <nincsnevem662@gmail.com> | 2024-10-03 20:55:34 +0200 |
---|---|---|
committer | bptato <nincsnevem662@gmail.com> | 2024-10-03 20:58:46 +0200 |
commit | 3b468ef2079b6af989d15d885fcae85a4ad504ad (patch) | |
tree | 29879113c971747f43887d26dfb88c3128376cda /src | |
parent | 4ca1c2e58d9f6844b3253dd208fc19dbd8c95875 (diff) | |
download | chawan-3b468ef2079b6af989d15d885fcae85a4ad504ad.tar.gz |
sixel: transparency improvements
* don't set transparency when raster attributes suffice - it seems terminals don't background-fill in that case either. * fix transparency in encoder standalone mode * update comments
Diffstat (limited to 'src')
-rw-r--r-- | src/local/term.nim | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/src/local/term.nim b/src/local/term.nim index 2d5b6c14..2550ca69 100644 --- a/src/local/term.nim +++ b/src/local/term.nim @@ -815,10 +815,10 @@ proc outputSixelImage(term: Terminal; x, y: int; image: CanvasImage; if preludeLen > data.len: return var outs = term.cursorGoto(x, y) - # set transparency if we want to draw a non-6-divisible number - # of rows *or* the image is transparent; omit it otherwise, for then - # some terminals (e.g. foot) handle the image more efficiently - let trans = realh mod 6 != 0 or image.transparent + # set transparency if the image has transparent sixels; omit it + # otherwise, for then some terminals (e.g. foot) handle the image more + # efficiently + let trans = image.transparent outs &= DCS & "0;" & $int(trans) & "q" # set raster attributes outs &= "\"1;1;" & $realw & ';' & $realh |