Image to ZX Spec is a Java-based application which makes images or videos look as though they'd been rendered by a ZX Spectrum (the ancient but classic home computer).

This essentially means taking a regular photo, drastically reducing the number of colours (15 or less) and using dithering and other techniques (Bayes, Atkinson, Omega, Lightness, Burkes, Jarvis-Judice-Ninke, Sierra Filter Light, Stucki)  to try and make them look acceptable.

The interface is frustrating. Just a few examples: File > Open doesn't use the standard Explorer dialog and so can't display thumbnails; the preview window showing the results of each filter uses a fixed area of the image which can't be changed; the main program window displays your image at its full export size, even if this is larger than the size of your screen.

And yet, if you can fight your way through (and turn off scaling to get better quality images), the smarter options can sometimes deliver surprising results. We reduced a full-colour photo of a woman to a mere 9 colours with the Lightness filter, and-- it still looked very good. We'd lost a lot of detail, but the image was still very recognisable, appealing, with some of the light and shade preserved, and even a tiny scattering of purple to represent some flowers in the background.

The "Character" effect is another highlight, building your image with ASCII characters. Blocks of detail are represented by characters depending on how many pixels they take, so the lightest areas are blank, the next might be ".", then ":", "-" and so on. Sounds odd if you've not seen it before, but with the right source picture the results can be amazing: a very accurate black and white representation of the original, but if you zoom in you can see the characters that make it up.

Surprise bonus features include the ability to import videos and export animated GIFs, and you get plenty of manual control over the image conversion process.

Changelog for 2.0.0:
Updated for Java 8.
Integrated native video decoding via HumbleVideo.
Massive performance improvement for processing video.
Improved code quality with tests, logging and Java 8 features.
Fixed Gigascreen original scale conversion crash bug.
Fixed original scale conversion converted edge pixels bug.
Fixed black threshold scaling range.
Added warnings for poor options combinations.
Modified About to show free memory.
Fixed small graphics memory leak.
Added turbo mode.


Image to ZX Spec has a painfully annoying interface, but some of its image processing effects can work very well. That's "can", not "often" - reducing images to 16 colours or less usually means a major loss of detail - but we had enough successes to justify the download.