• sales

    +86-0755-88291180

32x32 Chinese font modulo description

32x32 Chinese Chinese font modulo description

The size settings are as shown below:
After the modulo is successful, you need to define the following structure array to store the modulo data (the definition of structure is in the Chinese_and_English_display_modulo_settings):
const typFNT_GB32 tfont32[]=
{
  "中",0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x01,0x80,0x00,
  0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,
  0x08,0x01,0x80,0x30,0x0F,0xFF,0xFF,0xF0,0x0C,0x01,0x80,0x20,0x0C,0x01,0x80,0x20,
  0x0C,0x01,0x80,0x20,0x0C,0x01,0x80,0x20,0x0C,0x01,0x80,0x20,0x0C,0x01,0x80,0x20,
  0x0C,0x01,0x80,0x20,0x0C,0x01,0x80,0x20,0x0F,0xFF,0xFF,0xE0,0x0C,0x01,0x80,0x20,
  0x0C,0x01,0x80,0x20,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,
  0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,
  0x00,0x01,0x80,0x00,0x00,0x01,0x80,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,
};
The function is defined as follows:
void GUI_DrawFont32(u16 x, u16 y, u16 fc, u16 bc, u8 *s,u8 mode)
{
    u8 i,j;
    u16 k;
    u16 HZnum;
    u16 x0=x;
    HZnum=sizeof(tfont32)/sizeof(typFNT_GB32);	//Automatic statistics of the number of Chinese characters
    for (k=0;k<HZnum;k++) 
    {
	 if ((tfont32[k].Index[0]==*(s))&&(tfont32[k].Index[1]==*(s+1)))
	 { 	
               LCD_SetWindows(x,y,x+32-1,y+32-1);
	       for(i=0;i<32*4;i++)
	       {
		     for(j=0;j<8;j++)
	             {
			   if(!mode) //Non-overlay mode: The font has a background color, which will overwrite the original display
			   {
				if(tfont32[k].Msk[i]&(0x80>>j))
                                {
				      Lcd_WriteData_16Bit(fc);
                                }				
				else 
                                {
                                      Lcd_WriteData_16Bit(bc);
				}			
                           }
			   else //Overlay mode: the font does not have a background color, and is directly superimposed and displayed on the original display content
			   {
				POINT_COLOR=fc;
			        if(tfont32[k].Msk[i]&(0x80>>j))
                                {
                                      LCD_DrawPoint(x,y);// Draw a point
				}		
		                x++;
				if((x-x0)==32)
				{
				      x=x0;
				      y++;
				      break;
				}
			   }
		      }
		}
	  }				  	
	  continue;  //Find the corresponding dot matrix font to exit immediately, to prevent the impact of multiple Chinese characters repeated modulo
     }
     LCD_SetWindows(0,0,lcddev.width-1,lcddev.height-1);// Restore window to full screen
}

TAG: MPS2.5G Raspberry Pi 5 PCIe to NVME SSD And 2.5G Ethernet RJ45 HAT RTL8125 2280 2242 2230 Intel BE200 Wireless WLAN Card Gigabit Tri-Band WiFi7 Bluetooth 5.4 M.2 MU-MIMO IEEE 802.11 ESP32-S3 1.14inch LCD ESP32 S3 LCD 1.3 inch Holographic Display Screen 1.3inch 3D Transparent Refractive Prism Mini TV For Arduino Raspberry Pi MIPI Milk-V Duo S 512MB SG2000 RISC-V ESP-NOW Control ESP32-S3 MAX AI Camera 3.5inch LCD Dual MIC Development Board Display 320x480 3.5 inch TouchScreen Voice Interruption Object Recognition Raspberry-Pi-Pico-W-webserver ESP32 5inch Luckfox CM4 OpenWrt Tutorial JLINK OB 1.54inch OLED Display Raspberry Pi White Raspberry Pi 5 PCIe to M.2 NVMe SSD Adapter Board HAT Pi5-PCIe-MPS2242-2230-Board Computer USB Monitor Screen Raspberry Pi 5 PCIe to 2-CH PCIe FFC Dual PCIe HAT Board Pi5 Double