Critical Bug fix in Text Rendering function
This commit is contained in:
parent
a5ae067960
commit
3be667c90e
8
glcd.c
8
glcd.c
@ -5,9 +5,9 @@
|
||||
|
||||
uint16_t lcd_width, lcd_height;
|
||||
uint16_t bgcolor=White, fgcolor=Black;
|
||||
uint16_t cx, cy;
|
||||
uint16_t cx=0, cy=0;
|
||||
static uint8_t tpText=0;
|
||||
uint8_t* font;
|
||||
const uint8_t* font;
|
||||
|
||||
void lcdInit(void) {
|
||||
lld_lcdInit();
|
||||
@ -117,7 +117,7 @@ void lcdDrawLine(uint16_t x1, uint16_t y1, uint16_t x2, uint16_t y2, uint16_t co
|
||||
}
|
||||
}
|
||||
|
||||
void lcdSetFont(uint8_t *fnt) {
|
||||
void lcdSetFont(const uint8_t *fnt) {
|
||||
font = fnt;
|
||||
}
|
||||
|
||||
@ -164,7 +164,7 @@ void lcdDrawChar(char c) {
|
||||
cx += fontWidth;
|
||||
if(sps != 0) {
|
||||
if(!tpText)
|
||||
lcdFillArea(cx, cy, sps, fontHeight, fgcolor);
|
||||
lcdFillArea(cx, cy, cx+sps, cy+fontHeight, bgcolor);
|
||||
cx += sps;
|
||||
}
|
||||
}
|
||||
|
4
glcd.h
4
glcd.h
@ -35,7 +35,7 @@ enum transparency {solid, transparent};
|
||||
// For text rendering only
|
||||
extern uint16_t bgcolor, fgcolor;
|
||||
extern uint16_t cx, cy;
|
||||
extern uint8_t* font;
|
||||
extern const uint8_t* font;
|
||||
|
||||
// A few macros
|
||||
#define lcdGotoXY(x,y) { cx=x; cy=y; }
|
||||
@ -55,7 +55,7 @@ void lcdDrawRectString(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, const
|
||||
void lcdDrawCircle(uint16_t x, uint16_t y, uint16_t radius, uint8_t filled, uint16_t color);
|
||||
|
||||
void lcdSetFontTransparency(uint8_t transparency);
|
||||
void lcdSetFont(uint8_t *fnt);
|
||||
void lcdSetFont(const uint8_t *fnt);
|
||||
void lcdDrawChar(char c);
|
||||
void lcdPutString(const char *str);
|
||||
void lcdDrawString(uint16_t x, uint16_t y, const char *str, uint16_t color, uint16_t bkcolor);
|
||||
|
Loading…
Reference in New Issue
Block a user