#ifndef MYWIN_LCD_H__ #define MYWIN_LCD_H__ //创建一个虚拟屏幕 WIN_LcdStruct *WIN_CreatVirtualLcd (int x_size,int y_size); //删除虚拟屏幕 void WIN_DeleteVirtualLcd (WIN_LcdStruct *lcd); //设置屏幕显示方向 void WIN_LcdSetScreenDis (WIN_LcdStruct *lcd,int d); //设置活动窗口 void WIN_LcdSetWindow (WIN_LcdStruct *lcd,int x_s,int y_s,int x_size,int y_size); int WIN_LcdGetWindowSizeX (WIN_LcdStruct *lcd); int WIN_LcdGetWindowSizeY (WIN_LcdStruct *lcd); int WIN_LcdGetLcdSizeX(WIN_LcdStruct *lcd); int WIN_LcdGetLcdSizeY (WIN_LcdStruct *lcd); u32 WIN_LcdSetLcdColor (WIN_LcdStruct *lcd,u32 color); u32 WIN_LcdSetLcdBkColor (WIN_LcdStruct *lcd,u32 color); u32 WIN_LcdSetLcdColor16 (WIN_LcdStruct *lcd,u32 color); u32 WIN_LcdSetLcdBkColor16 (WIN_LcdStruct *lcd,u32 color); u32 WIN_LcdGetLcdColor (WIN_LcdStruct *lcd); u32 WIN_LcdGetLcdBkColor (WIN_LcdStruct *lcd); u32 WIN_LcdGetLcdColor16 (WIN_LcdStruct *lcd); u32 WIN_LcdGetLcdBkColor16 (WIN_LcdStruct *lcd); //设置绘制模式,1,不绘制背景,0,绘制背景 void WIN_LcdSetLcdDrawMode (WIN_LcdStruct *lcd,int mode); void WIN_LcdFillRectOff16At (WIN_LcdStruct *lcd,int s_x,int s_y,int s_xsize,int s_ysize,u16 *buff,int x_s,int y_s,int xsize,int ysize); //安全画点,以屏幕窗口的坐标为原点,并且画点不会超出窗口范围 void WIN_LcdDrawPointSafe (WIN_LcdStruct *lcd,int x,int y,int mode); //安全画点,以屏幕窗口的坐标为原点,并且画点不会超出窗口范围 //以指定颜色画点,而不是前景色 void WIN_LcdDrawPointSafeColor (WIN_LcdStruct *lcd,int x,int y,u16 color); //以指定色透明度画点0~32,0,全透明,31,不透明 void WIN_LcdDrawPointSafeColorAlpha (WIN_LcdStruct *lcd,int x,int y,u16 color,u8 alpha); //填充矩形,已窗口坐标为原点 void WIN_LcdFillRectByColor (WIN_LcdStruct *lcd,int x,int y,int x_size,int y_size); //以透明度填充矩形,已窗口坐标为原点 void WIN_LcdFillRectByColorAlpha (WIN_LcdStruct *lcd,int x,int y,int x_size,int y_size,u8 alpha); //绘制图标,图标使用const数组编译在程序里,其本身已经附带了大小等参数 //此函数效率比较低,只用于绘制小图标,绘制图片使用矩形填充函数 void WIN_LcdDrawImag (WIN_LcdStruct *lcd,int x,int y,int xsize,int ysize,const u8 *buff); //绘制图标,但是不绘制指定颜色 void WIN_LcdDrawImagButColor (WIN_LcdStruct *lcd,int x,int y,int xsize,int ysize,const u8 *buff,u16 color); //绘制图标,把图像的有效部分绘制为指定颜色 //此函数效率比较低,只用于绘制小图标,绘制图片使用矩形填充函数 void WIN_LcdDrawImagByColor (WIN_LcdStruct *lcd,int x,int y,int xsize,int ysize,const u8 *buff,u16 color); //绘制图标,把原图像转化为透明度,用指定颜色来绘制 //此函数效率比较低,只用于绘制小图标,绘制图片使用矩形填充函数 void WIN_LcdDrawImagByAlpha (WIN_LcdStruct *lcd,int x,int y,int xsize,int ysize,const u8 *buff,u16 color); //清除绘图窗口内的显示 void WIN_LcdClear (WIN_LcdStruct *lcd); //清除矩形内的显示 void WIN_LcdClearRect (WIN_LcdStruct *lcd,int x,int y,int x_size,int y_size); //获取指定矩形空间的屏幕颜色,屏幕的绝对坐标 void WIN_LcdGetColors (WIN_LcdStruct *lcd,u16 *buff,int x_s,int y_s,int x_size,int y_size); #endif