minigui添加TTF字體支持

前言

本文主要內(nèi)容如下:

1.minigui添加TTF字體

一咨演、運(yùn)行環(huán)境

芯片:TI385

sdk:TI385

軟件環(huán)境:嵌入式linux宠能,2.6.37? armv7l?

二夸楣、具體改動(dòng)

1.關(guān)于整個(gè)工程目錄列表如下:

>iphone-like-demo-1.0.0(這個(gè)暫時(shí)不明白有沒(méi)有用到)

>toolslib(庫(kù)文件夾)

? ? -freetype-1.3.1(TTF字體庫(kù))

? ? -jpeg-7(jpeg支持庫(kù))

? ? -libmgi-2.0.4(mgi支持庫(kù))

? ? -libminigui-3.0.12-linux(minigui庫(kù))

? ? -libpng-1.2.37(png庫(kù))

? ? -tslib(touch校準(zhǔn)支持庫(kù))

? ? -zlib-1.2.2(好像是解壓縮支持庫(kù))

>visminigui(minigui主應(yīng)用程序)

2.進(jìn)入minigui庫(kù)所在目錄

1)make clean

2)make uninstall

3)configure

./configure --prefix=$PWD/install CC=arm-none-linux-gnueabi-gcc CXX=arm-none-linux-gnueabi-g++ LD=arm-none-linux-gnueabi-ld CFLAGS="-I/home/qdg/apps/picencdec/jpeg-6b/install/include -I$PWD/../libpng-1.2.37/install/include -I$PWD/../tslib/install/include -I$PWD/../zlib-1.2.2/install/include -I$PWD/../freetype-1.3.1/install/include -I$PWD/../freetype-1.3.1/install/include/freetype " --host=arm-linux --target=arm-linux --build=i386-linux --with-osname=linux --with-style=classic --with-targetname=fbcon --with-ttfsupport=ft1 --with-ft1-includes=$PWD/../freetype-1.3.1 /install/include/freetype --disable-vbfsupport --enable-jpgsupport --enable-pngsupport --enable-procs --enable-autoial --enable-tslibial --enable-splash=no --enable-pcxvfb=no --disable-screensaver

注意,需要根據(jù)實(shí)際情況作相應(yīng)的配置抑月,可以通過(guò)configure --help查看树叽。

主要是路徑要正確,作者configure沒(méi)有配置正確谦絮,導(dǎo)致各種問(wèn)題题诵,并且TTF字體沒(méi)有生效,直到最后configure正確才成功挨稿。

可以將configure的內(nèi)容寫(xiě)入到autogen.sh文件中仇轻,運(yùn)行autogen.sh,不用每次輸入命令奶甘。

4)在mgcofig.h文件中添加TTF庫(kù)的支持

/* Define if support TrueType font */

/* #undef _MGFONT_TTF */

#define _MGFONT_TTF 1

5)make

6)make install

會(huì)在install/lib目錄下生成庫(kù)文件。

3.進(jìn)入visminigui主應(yīng)用下

在minigui的init中添加TTF字體庫(kù)支持和字體

InitVectorialFonts();

//fonts

//ISO8859-1

? ? pWinCtrl->fontlist.font_gb2312_song_16 = CreateLogFont("ttf", "arial", "GB2312", FONT_WEIGHT_REGULAR, FONT_SLANT_ROMAN,? FONT_SETWIDTH_NORMAL, FONT_SPACING_CHARCELL, FONT_UNDERLINE_NONE, FONT_STRUCKOUT_NONE,16,0);

pWinCtrl->fontlist.font_gb2312_song_32 = CreateLogFont("ttf", "arial", "GB2312", FONT_WEIGHT_REGULAR, FONT_SLANT_ROMAN,? FONT_SETWIDTH_NORMAL, FONT_SPACING_CHARCELL, FONT_UNDERLINE_NONE, FONT_STRUCKOUT_NONE,32,0);

另外需要在destory中銷(xiāo)毀

TermVectorialFonts();

使用字體

SelectFont(hdc, pWinCtrl->fontlist.font_gb2312_song_32);

4.在MiniGUI.cfg中修改

[truetypefonts]

font_number=3

name0=ttf-arial-rrncnn-0-0-ISO8859-1

fontfile0=/mnt/apps/dm8107_e700/minigui/res/font/arial.ttf

5.將庫(kù)文件祭椰、主應(yīng)用臭家、MiniGUI.cfg放到TI385中對(duì)應(yīng)的minigui路徑對(duì)應(yīng)的文件夾下

>minigui

? ? -./lib/libttf.so.2(這個(gè)是TTF支持庫(kù)freetype-1.3.1)

? ? -./lib/libminigui_procs-3.0.so.12

? ? -./MiniGUI.cfg

? ? -./mginit

? ? -./font/arial.ttf

然后啟動(dòng)可以看到TTF字體效果。

三方淤、總結(jié)

minigui的資料非常少钉赁,走了很多彎路。最開(kāi)始認(rèn)為應(yīng)用和庫(kù)默認(rèn)是支持TTF的携茂,把TTF字體加進(jìn)去后發(fā)現(xiàn)完全沒(méi)有效果你踩。接著在網(wǎng)上看到說(shuō)是要在庫(kù)中支持TTF字體,改mgconfig.h內(nèi)容讳苦,結(jié)果改過(guò)后編譯沒(méi)有反應(yīng)带膜。加打印才發(fā)現(xiàn)關(guān)于TTF的部分沒(méi)有編譯,然后又看到有說(shuō)要configure配置鸳谜,如果不是網(wǎng)上提到膝藕,甚至都都不知道這個(gè),而且對(duì)minigui不熟悉咐扭,花了很多時(shí)間在configure上面芭挽。最后同事幫忙才搞定configure滑废,作者即使是現(xiàn)在,configure要怎么搞都不清楚袜爪。configure搞定就基本沒(méi)別的問(wèn)題了蠕趁。

最終解決這個(gè)問(wèn)題,主要是問(wèn)人辛馆,在網(wǎng)上找資料妻导,查原因。真是折騰了很久怀各,另外也認(rèn)清了現(xiàn)實(shí)倔韭,嵌入式需要學(xué)習(xí)的東西太多了,作者還有許多路要走瓢对。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末寿酌,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子硕蛹,更是在濱河造成了極大的恐慌醇疼,老刑警劉巖,帶你破解...
    沈念sama閱讀 222,183評(píng)論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件法焰,死亡現(xiàn)場(chǎng)離奇詭異秧荆,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)埃仪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,850評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門(mén)乙濒,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人卵蛉,你說(shuō)我怎么就攤上這事颁股。” “怎么了傻丝?”我有些...
    開(kāi)封第一講書(shū)人閱讀 168,766評(píng)論 0 361
  • 文/不壞的土叔 我叫張陵甘有,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我葡缰,道長(zhǎng)亏掀,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 59,854評(píng)論 1 299
  • 正文 為了忘掉前任泛释,我火速辦了婚禮滤愕,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘胁澳。我一直安慰自己该互,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,871評(píng)論 6 398
  • 文/花漫 我一把揭開(kāi)白布韭畸。 她就那樣靜靜地躺著宇智,像睡著了一般蔓搞。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上随橘,一...
    開(kāi)封第一講書(shū)人閱讀 52,457評(píng)論 1 311
  • 那天喂分,我揣著相機(jī)與錄音,去河邊找鬼机蔗。 笑死蒲祈,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的萝嘁。 我是一名探鬼主播梆掸,決...
    沈念sama閱讀 40,999評(píng)論 3 422
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼牙言!你這毒婦竟也來(lái)了酸钦?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 39,914評(píng)論 0 277
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤咱枉,失蹤者是張志新(化名)和其女友劉穎卑硫,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體蚕断,經(jīng)...
    沈念sama閱讀 46,465評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡欢伏,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,543評(píng)論 3 342
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了亿乳。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片硝拧。...
    茶點(diǎn)故事閱讀 40,675評(píng)論 1 353
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖风皿,靈堂內(nèi)的尸體忽然破棺而出河爹,到底是詐尸還是另有隱情,我是刑警寧澤桐款,帶...
    沈念sama閱讀 36,354評(píng)論 5 351
  • 正文 年R本政府宣布,位于F島的核電站夷恍,受9級(jí)特大地震影響魔眨,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜酿雪,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,029評(píng)論 3 335
  • 文/蒙蒙 一遏暴、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧指黎,春花似錦朋凉、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,514評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)墓毒。三九已至,卻和暖如春亲怠,著一層夾襖步出監(jiān)牢的瞬間所计,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,616評(píng)論 1 274
  • 我被黑心中介騙來(lái)泰國(guó)打工团秽, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留主胧,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,091評(píng)論 3 378
  • 正文 我出身青樓习勤,卻偏偏與公主長(zhǎng)得像踪栋,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子图毕,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,685評(píng)論 2 360

推薦閱讀更多精彩內(nèi)容