/* * Builds font data from an 8x8 PNG image */ #include #include #include #include "mylibpng/mylibpng.h" int main(int argc, char *argv[]) { pngimage img; int i, j; uint8_t val; pngcolor8 tmp; if (argc < 3) { printf("Usage %s 'character' image\n", argv[0]); exit(EXIT_FAILURE); } img = mypng_read(argv[2]); if (img->width != 8 && img->height != 8) { printf("Wrong image size, not 8x8\n"); exit(EXIT_FAILURE); } printf("'%s', ", argv[1]); for (i = 0; i < 8; i++) { val = 0; for (j = 0; j < 8; j++) { mypng_get8(img, j, i, &tmp); if (tmp.r != 0xff && tmp.g != 0xff && tmp.b != 0xff) { val |= 1 << j; } } printf("0x%.2x ", val); } printf("\n"); return 0; }