Sixel is a graphics format made of patterns six pixels high and one wide.
An image is encoded by breaking up the bitmap into a series of 6-pixel high strips that is then converted into a single ASCII character, offset by 0x3f so that the first sixel is encoded as ?. This ensures that the sixels remain within the printable character range of the ASCII character set.
The pixels can be read as a binary number, with the top pixel being the least significant bit. Add the value of the pixels together, which gives a number between 0 and 63 inclusive. This is converted to a character code by adding 63, which is the code of the question mark character, ‘?’. The correspondence between each possible combination of six pixels and its sixel character is illustrated below.
Color is supported using the # character, followed by a number referring to one of a number of color registers, which varied from device to device.
- $ Carriage Return
- - Line Feed
- #1 Color1
incoming gly format