Files
NTUhrVPxDesign/libraries/_NToolsFonts/char14x24.h
2024-03-04 12:35:37 +01:00

267 lines
8.1 KiB
C

uint8_t Out14x24Char(char charater, uint8_t x, uint8_t y, uint8_t red,uint8_t green,uint8_t blue){
switch (charater){
case '0':
LineH(x+2,y,10,red,green,blue);
LineH(x+1,y+1,12,red,green,blue);
LineH(x,y+2,14,red,green,blue);
LineV(x,y+3,18,red,green,blue);
LineV(x+1,y+3,18,red,green,blue);
LineV(x+2,y+3,18,red,green,blue);
LineV(x+11,y+3,18,red,green,blue);
LineV(x+12,y+3,18,red,green,blue);
LineV(x+13,y+3,18,red,green,blue);
LineH(x,y+21,14,red,green,blue);
LineH(x+1,y+22,12,red,green,blue);
LineH(x+2,y+23,10,red,green,blue);
return 14;
break;
case '1':
LineV(x,y+6,4,red,green,blue);
LineV(x+1,y+5,4,red,green,blue);
LineV(x+2,y+4,4,red,green,blue);
LineV(x+3,y+3,4,red,green,blue);
LineV(x+4,y+2,4,red,green,blue);
LineV(x+5,y+1,4,red,green,blue);
LineV(x+6,y,4,red,green,blue);
LineV(x+7,y,24,red,green,blue);
LineV(x+8,y,24,red,green,blue);
LineV(x+9,y,24,red,green,blue);
return 10;
break;
case '2':
LineH(x+2,y,10,red,green,blue);
LineH(x+1,y+1,12,red,green,blue);
LineH(x,y+2,14,red,green,blue);
LineH(x,y+3,3,red,green,blue);
LineV(x+11,y+2,9,red,green,blue);
LineV(x+12,y+2,9,red,green,blue);
LineV(x+13,y+2,9,red,green,blue);
LineH(x+10,y+11,3,red,green,blue);
LineH(x+9,y+12,3,red,green,blue);
LineH(x+8,y+13,3,red,green,blue);
LineH(x+7,y+14,3,red,green,blue);
LineH(x+6,y+15,3,red,green,blue);
LineH(x+5,y+16,3,red,green,blue);
LineH(x+4,y+17,3,red,green,blue);
LineH(x+3,y+18,3,red,green,blue);
LineH(x+2,y+19,3,red,green,blue);
LineH(x+1,y+20,3,red,green,blue);
LineH(x,y+21,14,red,green,blue);
LineH(x,y+22,14,red,green,blue);
LineH(x,y+23,14,red,green,blue);
return 14;
break;
case '3':
LineH(x+2,y,10,red,green,blue);
LineH(x+1,y+1,12,red,green,blue);
LineH(x,y+2,14,red,green,blue);
LineH(x,y+3,3,red,green,blue);
LineV(x+11,y+3,18,red,green,blue);
LineV(x+12,y+3,18,red,green,blue);
LineV(x+13,y+3,8,red,green,blue);
LineV(x+13,y+13,8,red,green,blue);
LineH(x+6,y+11,6,red,green,blue);
LineH(x+6,y+12,6,red,green,blue);
LineH(x,y+20,3,red,green,blue);
LineH(x,y+21,14,red,green,blue);
LineH(x+1,y+22,12,red,green,blue);
LineH(x+2,y+23,10,red,green,blue);
return 14;
break;
case '4':
LineV(x,y,11,red,green,blue);
LineV(x+1,y,12,red,green,blue);
LineV(x+2,y,13,red,green,blue);
LineH(x+3,y+11,8,red,green,blue);
LineH(x+3,y+12,8,red,green,blue);
LineV(x+11,y,24,red,green,blue);
LineV(x+12,y,24,red,green,blue);
LineV(x+13,y,24,red,green,blue);
return 14;
break;
case '5':
LineH(x+1,y,13,red,green,blue);
LineH(x,y+1,14,red,green,blue);
LineH(x,y+2,13,red,green,blue);
LineV(x,y+3,9,red,green,blue);
LineV(x+1,y+3,10,red,green,blue);
LineV(x+2,y+3,10,red,green,blue);
LineH(x+3,y+11,9,red,green,blue);
LineH(x+3,y+12,10,red,green,blue);
LineV(x+11,y+11,10,red,green,blue);
LineV(x+12,y+11,10,red,green,blue);
LineV(x+13,y+12,9,red,green,blue);
LineH(x,y+20,3,red,green,blue);
LineH(x,y+21,14,red,green,blue);
LineH(x+1,y+22,12,red,green,blue);
LineH(x+2,y+23,10,red,green,blue);
return 14;
break;
case '6':
LineH(x+2,y,10,red,green,blue);
LineH(x+1,y+1,12,red,green,blue);
LineH(x,y+2,14,red,green,blue);
LineH(x+11,y+3,3,red,green,blue);
LineV(x,y+3,18,red,green,blue);
LineV(x+1,y+3,18,red,green,blue);
LineV(x+2,y+3,18,red,green,blue);
LineH(x+3,y+11,8,red,green,blue);
LineH(x+3,y+12,8,red,green,blue);
LineV(x+11,y+11,10,red,green,blue);
LineV(x+12,y+12,9,red,green,blue);
LineV(x+13,y+13,8,red,green,blue);
LineH(x,y+21,14,red,green,blue);
LineH(x+1,y+22,12,red,green,blue);
LineH(x+2,y+23,10,red,green,blue);
return 14;
break;
case '7':
LineH(x+1,y,13,red,green,blue);
LineH(x,y+1,14,red,green,blue);
LineH(x,y+2,14,red,green,blue);
LineH(x+11,y+3,3,red,green,blue);
LineH(x+11,y+4,3,red,green,blue);
LineH(x+11,y+5,3,red,green,blue);
LineH(x+10,y+6,3,red,green,blue);
LineH(x+10,y+7,3,red,green,blue);
LineH(x+10,y+8,3,red,green,blue);
LineH(x+9,y+9,3,red,green,blue);
LineH(x+9,y+10,3,red,green,blue);
LineH(x+9,y+11,3,red,green,blue);
LineH(x+8,y+12,3,red,green,blue);
LineH(x+8,y+13,3,red,green,blue);
LineH(x+8,y+14,3,red,green,blue);
LineH(x+7,y+15,3,red,green,blue);
LineH(x+7,y+16,3,red,green,blue);
LineH(x+7,y+17,3,red,green,blue);
LineH(x+6,y+18,3,red,green,blue);
LineH(x+6,y+19,3,red,green,blue);
LineH(x+6,y+20,3,red,green,blue);
LineH(x+5,y+21,3,red,green,blue);
LineH(x+5,y+22,3,red,green,blue);
LineH(x+5,y+23,3,red,green,blue);
return 14;
break;
case '8':
LineH(x+2,y,10,red,green,blue);
LineH(x+1,y+1,12,red,green,blue);
LineH(x,y+2,14,red,green,blue);
LineV(x,y+3,8,red,green,blue);
LineV(x+1,y+3,8,red,green,blue);
LineV(x+2,y+3,8,red,green,blue);
LineV(x,y+13,8,red,green,blue);
LineV(x+1,y+13,8,red,green,blue);
LineV(x+2,y+13,8,red,green,blue);
LineV(x+11,y+3,8,red,green,blue);
LineV(x+12,y+3,8,red,green,blue);
LineV(x+13,y+3,8,red,green,blue);
LineV(x+11,y+13,8,red,green,blue);
LineV(x+12,y+13,8,red,green,blue);
LineV(x+13,y+13,8,red,green,blue);
LineH(x+1,y+11,12,red,green,blue);
LineH(x+1,y+12,12,red,green,blue);
LineH(x,y+21,14,red,green,blue);
LineH(x+1,y+22,12,red,green,blue);
LineH(x+2,y+23,10,red,green,blue);
return 14;
break;
case '9':
LineH(x+2,y,10,red,green,blue);
LineH(x+1,y+1,12,red,green,blue);
LineH(x,y+2,14,red,green,blue);
LineV(x,y+3,8,red,green,blue);
LineV(x+1,y+3,8,red,green,blue);
LineV(x+2,y+3,8,red,green,blue);
LineV(x+11,y+3,18,red,green,blue);
LineV(x+12,y+3,18,red,green,blue);
LineV(x+13,y+3,18,red,green,blue);
LineH(x+1,y+11,10,red,green,blue);
LineH(x+2,y+12,9,red,green,blue);
LineH(x,y+21,14,red,green,blue);
LineH(x+1,y+22,12,red,green,blue);
LineH(x+2,y+23,10,red,green,blue);
return 14;
break;
case '.':
LineH(x,y+22,2,red,green,blue);
LineH(x,y+23,2,red,green,blue);
return 2;
break;
case ':':
//LineH(x,y+6,2,red,green,blue);
LineH(x,y+7,2,red,green,blue);
LineH(x,y+8,2,red,green,blue);
LineH(x,y+15,2,red,green,blue);
LineH(x,y+16,2,red,green,blue);
//LineH(x,y+17,2,red,green,blue);
return 2;
break;
case '>':
LineH(x,y+2,3,red,green,blue);
LineH(x,y+3,3,red,green,blue);
LineH(x,y+4,3,red,green,blue);
LineH(x+3,y+5,3,red,green,blue);
LineH(x+3,y+6,3,red,green,blue);
LineH(x+3,y+7,3,red,green,blue);
LineH(x+6,y+8,3,red,green,blue);
LineH(x+6,y+9,3,red,green,blue);
LineH(x+6,y+10,3,red,green,blue);
LineH(x+9,y+11,3,red,green,blue);
LineH(x+9,y+12,3,red,green,blue);
LineH(x+9,y+13,3,red,green,blue);
LineH(x+6,y+14,3,red,green,blue);
LineH(x+6,y+15,3,red,green,blue);
LineH(x+6,y+16,3,red,green,blue);
LineH(x+3,y+17,3,red,green,blue);
LineH(x+3,y+18,3,red,green,blue);
LineH(x+3,y+19,3,red,green,blue);
LineH(x,y+20,3,red,green,blue);
LineH(x,y+21,3,red,green,blue);
LineH(x,y+22,3,red,green,blue);
return 12;
break;
case ' ':
for(uint8_t var= 0;var < 6;var++){
LineV(x+var,y,24,0,0,0);
}
return 6;
break;
case '-':
LineH(x,y+11,6,red,green,blue);
LineH(x,y+12,6,red,green,blue);
LineH(x,y+13,6,red,green,blue);
return 6;
break;
}
return 0;
}