找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 7044|回復(fù): 6
打印 上一主題 下一主題
收起左側(cè)

ucgui字體詳解以及如何自己生成字體 附ucGUI-gb2312漢字生成器源碼下載

  [復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
在使用 ucgui 做界面的時(shí)候。經(jīng)常碰到需要自己做字庫的情況。

網(wǎng)上已有各種字體生成工具,但在實(shí)際使用過程中,總不能那么隨心所欲的轉(zhuǎn)換,
有的需要用unicode格式,有的字體顯示不全。

ucgui 的字體,就是 GUI_FONT 結(jié)構(gòu)體
GUI_FONT 前面幾個(gè)函數(shù),是字體顯示,測(cè)量等函數(shù)
這幾個(gè)函數(shù),通常使用 GUI_FONTTYPE_PROP, GUI_FONTTYPE_PROP_SJIS 等2個(gè)宏替換。
GUI_FONTTYPE_PROP :    默認(rèn)的字體函數(shù)
GUI_FONTTYPE_PROP_SJIS:寬字符通用的字體函數(shù)

GUI_FONT 緊接著指向第一個(gè) GUI_FONT_PROP

GUI_FONT_PROP->Start, End 說明該表的起始結(jié)束字符
GUI_FONT_PROP->paCharInfo 指向第一個(gè)字符索引表

GUI_CHARINFO->XSize,XDist 字元的寬度(像素)
GUI_CHARINFO->BytesPerLine:字元的寬度(字節(jié))

為此,本人專門寫了一個(gè)字體轉(zhuǎn)換程序,希望能幫到同樣受ucgui字體困擾的同學(xué)。



程序的源碼:


更新日志:

V1.0
用delphi寫的ucgui漢字生成器
ucgui自帶了一個(gè),但是生成的漢字編碼是unicode
不符合我們平時(shí)的使用習(xí)慣。
所以這里我寫了一個(gè)delphi版的。
運(yùn)行環(huán)境:xp(win7也許可用但我沒試過)

V2.0
排版修改

V3.0
解決運(yùn)行出錯(cuò)Bug
支持win7

V4.0
加入static

V5.0
解決英文字符寬度相等bug
解決某些情況下中文顯示錯(cuò)亂bug

V6.0
改對(duì)齊方式為手動(dòng)調(diào)整偏移
修復(fù)一個(gè)bug:總字體描述 ->YSize 填寫錯(cuò)誤

v7.0  (20171030)
解決清除重復(fù)的漢字會(huì)刪錯(cuò)bug
加清除中文標(biāo)點(diǎn)

v7.1 (20171220)
v7.0一個(gè)bug產(chǎn)生的Prop被錯(cuò)誤的加上數(shù)組下標(biāo),此版修復(fù)

v7.2 (20181103)
優(yōu)化:字元轉(zhuǎn)換時(shí)寬度根據(jù)實(shí)際的寬度計(jì)算,非寫死,這樣gui在使用字體時(shí)能少幾個(gè)循環(huán)



全部資料51hei下載地址:
ucGUI-gb2312漢字生成器v7.2.zip (268.78 KB, 下載次數(shù): 135)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏6 分享淘帖 頂1 踩
回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1 發(fā)表于 2018-11-3 14:05 | 只看該作者
好資料,51黑有你更精彩!!!
回復(fù)

使用道具 舉報(bào)

板凳
ID:294623 發(fā)表于 2020-1-13 19:42 | 只看該作者
有沒有抗鋸齒
回復(fù)

使用道具 舉報(bào)

地板
ID:764088 發(fā)表于 2020-5-29 12:00 | 只看該作者
好,學(xué)習(xí)了
回復(fù)

使用道具 舉報(bào)

5#
ID:419956 發(fā)表于 2020-12-29 21:24 | 只看該作者
你好。已有新版。請(qǐng)看我另外的帖子。
回復(fù)

使用道具 舉報(bào)

6#
ID:284093 發(fā)表于 2021-4-13 14:20 | 只看該作者
謝謝樓主, 剛好在做 UCGUI 字型, 下載試看看可不可以使用.
回復(fù)

使用道具 舉報(bào)

7#
ID:52721 發(fā)表于 2021-11-8 09:49 | 只看該作者
好軟件,使用中。
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

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

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

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