image2cpp is a simple tool to change images into byte arrays (or your array back into an image) for use with Arduino and (monochrome) displays such as OLEDs. It was originally made to work with the Adafruit OLED library. An example sketch for Arduino and this library can be found here.

More info (and credits) can be found in the Github repository. This is also where you can report any issues you might come across.

This tool also works offline. Simply save this page to your computer and open the file in your browser.

1. Select image


1. Paste byte array

x px

2. Image Settings

    Only images file type are allowed
    No files selected
    0 - 255; if the brightness of a pixel is above the given level the pixel becomes white, otherwise they become black. When using alpha, opaque and transparent are used instead.
    Note: centering the image only works when using a canvas larger than the original image.

    3. Preview

    4. Output

    Adds some extra Arduino code around the output for easy copy-paste into this example. If multiple images are loaded, generates a byte array for each and appends a counter to the identifier.
    Adds some extra Arduino code around the output for easy copy-paste. If multiple images are loaded, generates a single byte array.
    Creates a GFXbitmapFont formatted ouput. Used by a modified version of the Adafruit GFX library. GitHub project and example here.
    First ASCII character value is used only if a glyph identifier of length equal to 1 is not provided for each image. The value itself will be incremented by 1 for each glyph.
    If your image looks all messed up on your display, like the image below, try using a different mode.