我想把字体变大一点,下面这个程序显示16*16的字体正常,怎么把它改为48*48的字体????
//显示一个字符
void OLED_ShowChar(u8 xu8 yu8 chr){ unsigned char c=0i=0; c=chr-' ';//µÃµ½Æ«ÒƺóµÄÖµ if(x>Max_Column-1){x=0;y=y+2;} if(SIZE ==16) { OLED_Set_Pos(xy); for(i=0;i<8;i++) OLED_WR_Byte(F8X16[c*16+i]OLED_DATA); OLED_Set_Pos(xy+1); for(i=0;i<8;i++) OLED_WR_Byte(F8X16[c*16+i+8]OLED_DATA); } else { OLED_Set_Pos(xy+1); for(i=0;i<6;i++) OLED_WR_Byte(F6x8[c][i]OLED_DATA); }}
//显示一个字符串void OLED_ShowString(u8 xu8 yu8 *chr){ unsigned char j=0; while (chr[j]!='\0') { OLED_ShowChar(xychr[j]); x+=8; if(x>120){x=0;y+=2;} j++; }}
//显示数字void OLED_ShowNum(u8 xu8 yu32 numu8 lenu8 size){ u8 ttemp; u8 enshow=0; for(t=0;t<len;t++) { temp=(num/oled_pow(10len-t-1))%10; if(enshow==0&&t<(len-1)) { if(temp==0) { OLED_ShowChar(x+(size/2)*ty' '); continue; }else enshow=1; } OLED_ShowChar(x+(size/2)*tytemp+'0'); }}
1、重新生成一个48*48点阵的字库。这样显示效果好,但是耗占空间。
2、把16*16放大3倍。也就是说,原本一个点,现在画3*3=9个像素。锯齿会很严重,但你不用改字库。
}
应该是这样吧嘻嘻