Sixel / Inline Image Protocol Support #1671
ShaunLawrie
started this conversation in
Ideas
Replies: 1 comment
-
@ShaunLawrie Just saw this. Will look at it closer tomorrow. |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
@trackd and I've been playing around with Sixel seeing as it's finally going to be supported in the next Windows Terminal release. I think it could be cool to extend the functionality in the Spectre.Console.ImageSharp package to handle outputting sixel data for terminals that support it. I've used spectre console as my slide deck engine for quite a few presentations and being able to rick roll an audience in higher definition is something I've craved...
I have a rough working copy of sixel in my fork at the moment at main...ShaunLawrie:spectre.console:main
The image class is SixelImage and is used the same as CanvasImage e.g.
It seems to work with alignment/embedding so it's in a decent PoC state.
This implementation dumps the raw sixel data as a controlcode segment so it has no dimensions in Spectre.Console. To allow the image to have dimensions, the controlcode segment is directly followed by a blank canvas of the same dimensions. This may feel a bit odd but it was the way I could see adding it without making loads of changes in spectre.console core.
Things to consider:
Beta Was this translation helpful? Give feedback.
All reactions