Ascii Convert

AsciiConvert is a free program that allows you to take images and convert them to a text version, in the style of old-fashioned ascii art from the day of BBS yore.

Version History

Version 1.0 - Initial Release
Version 1.1 - Transitioned to MDB databases, removing the need for the additional provider download. Added limited color support.

How to Use

First, Download the program and unzip it into whichever directory you wish to use. There's no install, and the program does not alter your registry or any settings.

Once the program is open, it will look like this:



The ascii characters displayed are the valid ones for the conversion. You can toggle them on or off by left-clicking on them. Alternatively, you can right-click on them to redefine what symbol is used (the "default" extended ascii set is loaded from the database.) as shown below:



"Consolas" is the font used by the program, so you'll need to use the charmap values for those to get the character you want. As soon as you select it, the character image will change to the character you want. If you want to deal with a fixed character set on a more permanent basis, you'll need to change the database used. I've provided the "default.accdb" which is loaded on start-up. It's best to make a copy of that (As the program expects a certain table and input name) and then alter that with the codes you want using Microsoft Access:



You can then load the database using the "Change DB" option at the top, or you can proceed to convert as image by selecting "Process Image". You can choose any standard image format (PNG, BMP, JPG, etc) Once you've selected and image, it automatically processes and displays a preview image (larger images may have a delay):



If you hit "Save PNG" it will save the preview image in PNG format in the same directory as the file. Otherwise, "Ok" will bring you back to the main screen.

In either case, two additional outputs are generated: A text file containing the text version of the image, and a ".BIN" file. The text file is pretty self-explanatory, although there are some characters that may not output depending on your machine or the font set selected. (In particular, the superscript characters seem to have some issues.)

The ".BIN" file consists of all the characters in a binary file, in the manner shown below:

 
		    writer.Write(x); //x dim (int)
                    writer.Write(y); //y dim (int)

                    for (tx = 0; tx < x; tx++)  //x characters wide
                    {
                        for (ty = 0; ty < y; ty++) //y characters tall
                        {
                            writer.Write(charmatrix[tx, ty]); //character (int)
                            writer.Write(r); //r (double)
                            writer.Write(g); //g (double)
                            writer.Write(b); //b (double)
                        } //for ty
                    } //for tx

Where the double values are all color indexes between 1 (saturated) and 0 (absent.) For the purposes of this program, they're all one, which represents each character foreground color being bright white. Although this format isn't used for anything (currently) it will eventually be used the ascii image/art editing program I'm currently working on.

Examples and General Use

Questions? Comments? Contact me at "Demandmenothing" at "gmail.com"