ElektroBox Tool
XBM Bitmap Editor for Displays, Icons and Firmware
Draw simple 1-bit pixel graphics directly in the browser and export them as XBM-style C arrays for small displays, embedded projects, menu icons and documentation examples.
Bitmap editor
XBM Bitmap Editor
#define name_width, #define name_height and name_bits[].How to use it
Create a 1-bit bitmap without leaving the project workflow
Choose a preset or enter a custom width and height, then click or drag on the grid to toggle pixels. The generated C output updates automatically, so you can copy the array into an Arduino sketch, display driver example or firmware file.
Draw pixels
Click a cell to toggle it. Click and drag to draw or erase multiple pixels in one stroke.
Set dimensions
Use common icon sizes such as 16 × 16, 32 × 32 or 128 × 64, or enter a custom size up to 512 pixels.
Copy C output
Export width, height and byte data in a compact format that is easy to paste into embedded projects.
Output format
How the XBM byte packing works
The bitmap is exported row by row. Every group of eight horizontal pixels becomes one byte. In each byte, bit 0 represents the leftmost pixel in that group, bit 1 the next pixel and so on.
16 × 16 pxGood for small menu symbols, status icons and button graphics.
128 × 64 pxUseful for testing complete monochrome display layouts.
static const unsigned charEnable the type option when your codebase expects a typed constant array.
FAQ
XBM editor questions
Does the editor upload my drawing?
No. The bitmap editor runs locally in the browser. The drawing and generated code are handled by the page JavaScript.
Why is the bit order LSB-first?
XBM-style data stores the first pixel of each 8-pixel group in the least significant bit. This is different from some display libraries, so check your target library before use.
Can I use this for color graphics?
This tool is designed for 1-bit monochrome graphics. For grayscale or RGB displays, use it only for masks, simple icons or binary UI elements.
