Hi! You've got the right idea with frame - actually changing the image height is a really neat idea to produce the data file!
But I think you figured the issue out yourself. frame works by skipping forward that number of images - but it assumed they're one after the other - but as blocks of bytes. So if one image isn't exactly a byte long, there will be one or two unused bits between them.
I think the behaviour of Espruino there is probably ok - it could get tricky for it if it has to start an image halfway through a byte - but we could definitely improve the tools.
My intention was to allow the Image Converter to take an animated gif, but that seemed a bit tricky and for what you're doing a bit long image works ok. Maybe we could make the converter have an extra option for frames in image and then it would automatically set the height and add the relevant padding.
... and just FYI you could store the image as 2bpp 10x10 and it'd still be byte aligned, so that could be an option to use it as-is. With 2bpp you at least get the ability to have black+white+transparent, which may be handy for you.
Espruino is a JavaScript interpreter for low-power Microcontrollers. This site is both a support community for Espruino and a place to share what you are working on.
Hi! You've got the right idea with
frame
- actually changing the image height is a really neat idea to produce the data file!But I think you figured the issue out yourself.
frame
works by skipping forward that number of images - but it assumed they're one after the other - but as blocks of bytes. So if one image isn't exactly a byte long, there will be one or two unused bits between them.I think the behaviour of Espruino there is probably ok - it could get tricky for it if it has to start an image halfway through a byte - but we could definitely improve the tools.
My intention was to allow the Image Converter to take an animated gif, but that seemed a bit tricky and for what you're doing a bit long image works ok. Maybe we could make the converter have an extra option for
frames in image
and then it would automatically set the height and add the relevant padding.... and just FYI you could store the image as 2bpp 10x10 and it'd still be byte aligned, so that could be an option to use it as-is. With 2bpp you at least get the ability to have black+white+transparent, which may be handy for you.