diff options
author | michael <michael@3ae390bd-cb1e-0410-b409-cd5a39f66f1f> | 2012-01-16 02:50:03 +0000 |
---|---|---|
committer | michael <michael@3ae390bd-cb1e-0410-b409-cd5a39f66f1f> | 2012-01-16 02:50:03 +0000 |
commit | c98cf9ae78ecfb6769716d45b830b5b5e14209b7 (patch) | |
tree | b8b38128b8af76b6d64556fd43dcfaf344c86b5b | |
parent | 8c2ea5ba9705f6a0e43ea73609b131a442e3ee09 (diff) | |
download | lcd4linux-c98cf9ae78ecfb6769716d45b830b5b5e14209b7.tar.gz |
scaletext patch from Stefan Kuhne
git-svn-id: https://ssl.bulix.org/svn/lcd4linux/trunk@1170 3ae390bd-cb1e-0410-b409-cd5a39f66f1f
-rw-r--r-- | drv_dpf.c | 14 | ||||
-rw-r--r-- | drv_generic_graphic.c | 6 |
2 files changed, 16 insertions, 4 deletions
@@ -146,11 +146,23 @@ static int drv_dpf_start2(const char *section) } /* Fixme: provider other fonts someday... */ - if (XRES != 6 && YRES != 8) { + /* Overridden - we have scaled the textout drawing */ +/* if (XRES != 6 && YRES != 8) { error("%s: bad Font '%s' from %s (only 6x8 at the moment)", Name, s, cfg_source()); return -1; + } */ + + /* we dont want fonts below 6 width */ + if (XRES < 6) { + error("%s: bad Font '%s' width '%d' using minimum of 6)", Name, s, XRES); + XRES = 6; } + /* we dont want fonts below 8 height */ + if (YRES < 8) { + error("%s: bad Font '%s' height '%d' using minimum of 8)", Name, s, YRES); + YRES = 8; + } /* open communication with the display */ if (drv_dpf_open(section) < 0) { diff --git a/drv_generic_graphic.c b/drv_generic_graphic.c index a8ac4d5..e05542d 100644 --- a/drv_generic_graphic.c +++ b/drv_generic_graphic.c @@ -267,10 +267,10 @@ static void drv_generic_graphic_render(const int layer, const int row, const int } for (y = 0; y < YRES; y++) { - int mask = 1 << XRES; for (x = 0; x < XRES; x++) { - mask >>= 1; - if (chr[y] & mask) + int mask = 1 << 6; + mask >>= ((x * 6) / (XRES)) + 1; + if (chr[(y * 8) / (YRES)] & mask) drv_generic_graphic_FB[layer][(r + y) * LCOLS + c + x] = fg; else drv_generic_graphic_FB[layer][(r + y) * LCOLS + c + x] = bg; |