GBK点阵显示字库的制作和使用
開發環境是
win7系統 、Visual Studio 2019開發工具
1.生成GBK全字符文件
運行下面這段代碼,生成GBK全字符文件gbk.txt,編碼范圍0x8140~0xfefe。
// TestCDemo.cpp : 此文件包含 "main" 函數。程序執行將在此處開始并結束。
//
#include <stdio.h> ?
#include <stdlib.h> ?
int main(void)
{
? ? FILE* fp = 0;
? ? char ch = 0;
? ? unsigned short int start = 0x8140;
? ? unsigned char part1 = 0;
? ? unsigned char part2 = 0;
? ? fopen_s(&fp, "data.txt","wb");
? ? if ( fp == NULL)
? ? {
? ? ? ? perror("Cann't open gbk.txt");
? ? ? ? return -1;
? ? }
? ? else
? ? ? ? printf("Creat file data.txt/n");
? ? while (start < 0xfeff)
? ? {
? ? ? ? part1 = start >> 8;
? ? ? ? part2 = start;
? ? ? ? fputc(part1, fp);
? ? ? ? fputc(part2, fp);
? ? ? ? start++;
? ? }
? ? fclose(fp);
? ? printf("success!");
? ? return 0;
}
運行后,用記事本打開gbk.txt文件,可以看到其中的字符。
2.生成字模二進制文件
用“牧碼字模”軟件打開gbk.txt文件,選擇字體為宋體,字重為1,點陣大小16*16,對齊方式為左下,取模方式為“縱向取模、高位在下”。輸出格式選擇bin。然后點擊輸出,會生成一個temp.bin文件,改名為gbk.bin。
?
3.使用字庫文件
gbk.bin文件中按GBK編碼的大小排列,每32個字節可以顯示一個字符,假設一個字符的GBK編碼為NUM,那么它的點陣數據第一個字節的位置就是:
(NUM-0x8140)*32
從這個字節開始,讀取32個字節,將其按按照取模方式顯示即可。
例如:用Linux的終端模擬點陣屏幕,每個字符位置就是一個點,程序如下:
?
?
具體請查看原作者的文章??https://www.cnblogs.com/alan666/p/8312006.html
?
牧碼字模字膜提取軟件 下載地址??https://download.csdn.net/download/u013519290/14915183
宋體字模二進制文件下載??https://download.csdn.net/download/u013519290/14915040
生成GBK全字符文件源碼? ?https://download.csdn.net/download/u013519290/14914896
總結
以上是生活随笔為你收集整理的GBK点阵显示字库的制作和使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STM32F407 添加GBK32 字体
- 下一篇: 索尼官方在线商城的商品会更新吗?