下面程序中 size是字体大小,不太懂size一个变量怎么代表字的大小,然后,红 {MOD}的两句不懂是啥意思 希望能正面回答,不要说什么回去看c语言,麻烦抱着负责任的态度解答
void LCD_ShowString(u16 x,u16 y,u16 width,u16 height,u8 size,u8 *p)
{
u8 x0=x;
width+=x;
height+=y;
while((*p<='~')&&(*p>=' '))
{
if(x>=width){x=x0;y+=size;}
if(y>=height)break;
LCD_ShowChar(x,y,*p,size,0);
x+=size/2;
p++;
}
}
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
2,第一个if,就是判断x坐标是不是大于给定的宽度,大于就另起一行。
第二个,x+=size/2,因为ASCII的大小,等于汉字的一半,size假定你能理解表示的是字体大小,比如16*16字体,那么实际上ASCII是8*16,宽度8,高度16,所以每写完一个字符,x坐标加8,也就是size/2。
---------------------------------
谢谢
---------------------------------
我看了一下那个size的传递参数,比如,OLED_ShowString(0,0,"ALIENTEK",24); 这句传递的size是 24,我怎么知道 这个24怎么来的,24代表的是你上面说的 比如说 16*16这样的字体?
我也刚看到这,没理解,看了回复才明白,非常感谢!
一周热门 更多>