EmWin 文本显示函数

时间:2022-08-04 12:29:14

函数模型-----------------------------------

1:void GUI_DispChar(U16 c);  

在当前窗口的当前文本位置处,使用当前字体显示单个字符。  

c 显示的字符

2:void GUI_DispCharAt(U16 c, I16P x, I16P y);  

在当前窗口的指定位置处,使用当前字体显示单个字符。  

c 显示的字符

x 要写入到窗口的x位置

y 要写入到窗口的y位置

3:void GUI_DispChars(U16 c, int Cnt);

在当前窗口的当前文本位置处,使用当前字体按指定次数显示字符。

c 显示的字符

Cnt 重复的次数

4:void GUI_DispNextLine(void); 

将光标移至下一行的开始。

5:void GUI_DispString(const char GUI_FAR * s); 

在当前窗口的当前文本位置处,使用当前字体显示作为参数的字符串。

s 显示的字符串

6:void GUI_DispStringAt(const char GUI_FAR * s, int x, int y); 

在当前窗口的指定位置处,使用当前字体显示作为参数的字符串。 

s 显示的字符串

x 要写入到窗口的x位置

y 要写入到窗口的y位置

7:void GUI_DispStringAtCEOL(const char GUI_FAR * s, int x, int y); 

该例程使用的参数与 GUI_DispStringAt() 完全相同。它也执行同样的操作:在指定的位置显示所
给出的字符串。但是,完成此操作后,它会调用 GUI_DispCEOL() 例程清除本行剩下部分内容直至
行末。如果某个字符串要覆盖其他字符串,同时该字符串长度比原先的字符串要短,则使用该例程会
很方便。

8:void GUI_DispStringHCenterAt(const char GUI_FAR * s, int x, int y);

在当前窗口的指定位置处,使用当前字体水平居中显示作为参数的字符串。

s 显示的字符串

x 要写入窗口的x位置

y 要写入窗口的y位置

9:void GUI_DispStringInRect(const char GUI_FAR * s,
              GUI_RECT * pRect,
              int Align);

在当前窗口指定的矩形区域内的指定位置处,使用当前字体显示作为参数的字符串。 
s 显示的字符串

pRect  要写入的窗口矩形位置

Align  对齐标记,可以通过“”“OR”操作进行组合。垂直对齐和水平对齐应该组合使用

  垂直对齐:GUI_TA_TOP , GUI_TA_BOTTOM, GUI_TA_VCENTER

  水平对齐:GUI_TA_LEFT, GUI_TA_RIGHT, GUI_TA_HCENTER

10:void GUI_DispStringInRectEx(const char * s,
                GUI_RECT * pRect,
                int TextAlign,
                int MaxLen,
                const GUI_ROTATION * pLCD_Api);

s 显示的字符串

pRect  要写入到窗口的矩形区域

TextAlign  

对齐标记,可以通过“”“OR”操作进行组合。垂直对齐和水平对齐应该组合使用

  垂直对齐:GUI_TA_TOP , GUI_TA_BOTTOM, GUI_TA_VCENTER

  水平对齐:GUI_TA_LEFT, GUI_TA_RIGHT, GUI_TA_HCENTER

MaxLen  显示的最大字符数

pLCD_Api  GUI_ROTATE_0  不旋转文本,从左到右显示

       GUI_ROTATE_180  180度旋转文本

       GUI_ROTATE_CCW  逆时针旋转文本

       GUI_ROTATE_CW   顺时针旋转文本

11:void GUI_DispStringInRectWrap(const char GUI_UNI_PTR * s,
                   GUI_RECT * pRect,
                   int TextAlign,
                   GUI_WRAPMODE WrapMode);

在当前窗口指定的矩形区域内的指定位置处,使用当前字体显示字符串,并可自动换行 (可选)。

s 显示的字符串

pRect  要写入到窗口的矩形区域

TextAlign  

对齐标记,可以通过“”“OR”操作进行组合。垂直对齐和水平对齐应该组合使用

  垂直对齐:GUI_TA_TOP , GUI_TA_BOTTOM, GUI_TA_VCENTER

  水平对齐:GUI_TA_LEFT, GUI_TA_RIGHT, GUI_TA_HCENTER

WrapMode  GUI_WRAPMODE_NONE  不执行自动换行

       GUI_WRAPMODE_WORD  根据字对文本进行自动换行

       GUI_WRAPMODE_CHAR  根据字符对文本进行自动换行

12:void GUI_DispStringLen(const char GUI_FAR * s, int Len);

在当前窗口的当前文本位置处,使用当前字体按指定字符数显示作为参数的字符串 。

s 显示的字符串

len 显示的字符数

13:int GUI_WrapGetNumLines(const char GUI_UNI_PTR * pText,
              int xSize,
              GUI_WRAPMODE WrapMode) 

返回设置自动换行模式的指定文本的行数。

pText  显示的字符串

xSize  X-size 用以绘制文本

WrapMode  GUI_WRAPMODE_NONE  不执行自动换行

       GUI_WRAPMODE_WORD  根据字对文本进行自动换行

       GUI_WRAPMODE_CHAR  根据字符对文本进行自动换行

返回值:所选的文本对齐模式

文本的绘制模式:正常文本,反转文本,透明文本,异或文本,透明反转文本

14:int GUI_GetTextMode(void);

返回当前选定的文本模式

15:int GUI_SetTextMode(int TextMode);

按照指定的参数设置文本模式

TextMode  设置的文本模式,可以是TEXTMODE标记的任意组合 使用OR组合

TextMode  GUI_TEXTMODE_NORMAL  设置为显示正常文本

      GUI_TEXTMODE_REV  设置为显示反转文本

      GUI_TEXTMODE_TRANS  设置为显示透明文本 

      GUI_TEXTMODE_XOR  设置为反向显示的文本

返回值:之前选定的文本模式

16:char GUI_SetTextStyle(char Style);

按照指定的参数设置文本样式

Style  设置的文本样式

    GUI_TS_NORMAL  显示正常文本

    GUI_TS_UNDERLINE  显示带下划线的文本

    GUI_TS_STRIKETHRU  显示带删除线的文本

    GUI_TS_OVERLINE   显示带顶线的文本

返回值: 之前选定的文本样式

17:int GUI_GetTextAlign(void);

返回当前文本对齐模式

18:void GUI_SetLBorder(int x)

设置当前窗口换行后的左边界

x 新的左边界

19:int GUI_SetTextAlign(int TextAlign);

当前窗口的字符串输出设置文本对齐模式

TextAlign  设置的文本对齐模式,可以是水平和垂直对齐的组合

    GUI_TA_LEFT  x轴方向左对齐

    GUI_TA_HCENTER  x轴方向居中

    GUI_TA_RIGHT  x轴方向右对齐

    GUI_TA_TOP  字符y轴向顶部对齐

    GUI_TA_VCENTER  y轴方向居中

    GUI_TA_BOTTOM  在字体y轴底部像素线对齐

20:char GUI_GotoXY(int x, int y);
char GUI_GotoX(int x);
char GUI_GotoY(int y);

设置当前文本写入位置

x 新的x轴位置

y 新的y轴位置

21:int GUI_GetDispPosX(void);

int GUI_GetDispPosY(void);

返回当前的x位置 和 y位置

22:void GUI_Clear(void);

清除当前窗口

23:void GUI_DispCEOL(void);

清除当前(或显示)从当前文本位置到行末的内容,高度为当前字体的高度

一些常用的文本显示函数学习。