找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 1364|回復(fù): 6
收起左側(cè)

求怎么在C語言函數(shù)里調(diào)整中文顯示的行間距

[復(fù)制鏈接]
ID:1114840 發(fā)表于 2024-3-31 08:52 | 顯示全部樓層 |閱讀模式
求怎么在函數(shù)里調(diào)整中文顯示的行間距
  1. void OLED_ShowChinese12x12(unsigned char x,unsigned char y,unsigned char *s,unsigned char sizey,unsigned char mode)
  2. {
  3.         unsigned char i,j,k,DATA=0;
  4.         unsigned short HZnum;
  5.         unsigned char TypefaceNum;
  6. volatile unsigned char b=0;

  7.         x/=2;

  8.         TypefaceNum=(sizey/8+((sizey%8)?1:0))*sizey;//字符所占字節(jié)數(shù)
  9.         HZnum=sizeof(tfont12)/sizeof(typFNT_GB12);        //統(tǒng)計漢字庫數(shù)目
  10. //        Column_Address(x,x+sizey/2-1);
  11. //        Row_Address(y,y+sizey-1);
  12.         b=x+16/2-1;
  13.         Column_Address(x,b);
  14.         Row_Address(y,y+12-1);
  15.         for(k=0;k<HZnum;k++)
  16.         {
  17.                 if ((tfont12[k].Index[0]==*(s))&&(tfont12[k].Index[1]==*(s+1)))
  18.                 {         
  19.                         for(i=0;i<TypefaceNum;i++)
  20.                         {
  21.                                 for(j=0;j<4;j++)
  22.                                 {
  23.                                         if(tfont12[k].Msk[i]&(0x01<<(j*2+0)))
  24.                                         {
  25.                                                 DATA=0xf0;
  26.                                         }
  27.                                         if(tfont12[k].Msk[i]&(0x01<<(j*2+1)))
  28.                                         {
  29.                                                 DATA|=0x0f;
  30.                                         }
  31.                                         if(mode)
  32.                                         {
  33.                                                 OLED_WR_Byte(~DATA);
  34.                                         }else
  35.                                         {
  36.                                                 OLED_WR_Byte(DATA);
  37.                                         }
  38.                                         DATA=0;
  39.                                 }
  40.                         }
  41.                 }                                          
  42.                 continue;  //查找到對應(yīng)點陣字庫立即退出,防止多個漢字重復(fù)取模帶來影響
  43.         }

  44. }
復(fù)制代碼


回復(fù)

使用道具 舉報

ID:819198 發(fā)表于 2024-4-2 09:40 | 顯示全部樓層
推薦你看一下下面這個教程,可以補一些基礎(chǔ)知識 https://space.bilibili.com/37353 ... ondetail?sid=536055
回復(fù)

使用道具 舉報

ID:883242 發(fā)表于 2024-4-2 16:22 | 顯示全部樓層
你在這個函數(shù)里面調(diào)整行間距是毫無意義的,行間距是調(diào)用這個函數(shù)的地方確定的,這個函數(shù)最開始的參數(shù)x,y,其中的y就是行在顯示屏上面的位置,兩次調(diào)用這個函數(shù)的y值差異就是行間距,你改這個函數(shù)是瞎子點燈白費蠟。
回復(fù)

使用道具 舉報

ID:1115167 發(fā)表于 2024-4-2 16:46 | 顯示全部樓層
在函數(shù)中調(diào)整中文顯示的行間距,可以通過修改函數(shù)的CSS樣式來實現(xiàn)。具體步驟如下:



在函數(shù)的HTML代碼中,找到需要調(diào)整行間距的中文顯示的元素,可以是段落(<p>)、標(biāo)題(<h1>,<h2>,<h3>等)或其他具有文本內(nèi)容的元素。


為該元素添加一個唯一的id屬性,例如:<p id="chinese-text">中文內(nèi)容</p>。


在函數(shù)的CSS樣式中,使用該id選擇器來設(shè)置行間距。
回復(fù)

使用道具 舉報

ID:1010435 發(fā)表于 2024-4-2 16:56 | 顯示全部樓層
        b=x+16/2-1;這個就是確定下一行的起始位,可以修改這句 行間距多一行就+1,也可以定義個變量,z, b=x+16/2-1+z;就可以了
回復(fù)

使用道具 舉報

ID:1010435 發(fā)表于 2024-4-2 16:58 | 顯示全部樓層
這個函數(shù)好像字符串所有的字符起始位都一樣吧
回復(fù)

使用道具 舉報

ID:1115166 發(fā)表于 2024-4-2 17:02 | 顯示全部樓層
在CSS中設(shè)置行高(line-height)屬性來調(diào)整段落中文字的行間距。例如:    p {     line-height: 1.5; /* 設(shè)置行高為1.5倍 */ }
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表