做網(wǎng)站優(yōu)化給業(yè)務(wù)員提成百度資源提交
🧑 作者簡(jiǎn)介:阿里巴巴嵌入式技術(shù)專(zhuān)家,深耕嵌入式+人工智能領(lǐng)域,具備多年的嵌入式硬件產(chǎn)品研發(fā)管理經(jīng)驗(yàn)。
📒 博客介紹:分享嵌入式開(kāi)發(fā)領(lǐng)域的相關(guān)知識(shí)、經(jīng)驗(yàn)、思考和感悟。提供嵌入式方向的學(xué)習(xí)指導(dǎo)、簡(jiǎn)歷面試輔導(dǎo)、技術(shù)架構(gòu)設(shè)計(jì)優(yōu)化、開(kāi)發(fā)外包等服務(wù),有需要可私信聯(lián)系。
字體極限瘦身術(shù):Fontmin在嵌入式UI中的魔法應(yīng)用
- 1. 概述
- 2. 什么是Fontmin?
- 3. 安裝Fontmin
- 4. 使用方法
- 4.1 填入你要保留的字體
- 4.2 選擇字體
- 4.3 生成
- 5. 效果對(duì)比展示
- 6. 總結(jié)
- 附錄
- 3500常用漢字+數(shù)字+符號(hào)
1. 概述
在嵌入式系統(tǒng)的用戶(hù)界面(UI)設(shè)計(jì)中,字體的選擇和優(yōu)化至關(guān)重要。一個(gè)恰當(dāng)?shù)淖煮w不僅能夠提升用戶(hù)體驗(yàn),還能彰顯產(chǎn)品特色。然而,由于嵌入式設(shè)備常常受限于存儲(chǔ)空間和處理能力,大型字體文件可能成為性能瓶頸。一般情況下,我們只能在字體大小和存儲(chǔ)空間之間做個(gè)取舍,達(dá)到一個(gè)相對(duì)平衡,但這終歸是要有所犧牲的。
那么,有沒(méi)有更好的解決方案呢?答案是肯定的,為了解決這一問(wèn)題,我們來(lái)介紹下今天的主角:Fontmin
。Fontmin
是一個(gè)字體子集化工具,能夠幫助我們優(yōu)化字體資源,減少數(shù)據(jù)量,進(jìn)而加快加載速度,提升UI的流暢性和響應(yīng)速度。
2. 什么是Fontmin?
Fontmin
是第一個(gè)純 JavaScript 實(shí)現(xiàn)的字體子集化方案,專(zhuān)門(mén)用于移除字體文件中未使用的字形,從而大幅減少字體文件的體積。
在嵌入式UI開(kāi)發(fā)中,這意味著能夠減少資源的存儲(chǔ)占用,加快字體的讀取速度,使得UI更加輕盈,提升整體的系統(tǒng)性能。
3. 安裝Fontmin
可以訪問(wèn)官方下載頁(yè)面下載客戶(hù)端,目前已支持Windows平臺(tái)和Mac平臺(tái)。
目前最新版本是0.2.0,更新于2015年,估計(jì)短期內(nèi)不會(huì)再有什么更新??梢灾苯狱c(diǎn)擊下面鏈接直接下載:
- 下載Windows版本
- 下載Mac版本
4. 使用方法
下載后,無(wú)需安裝,直接雙擊運(yùn)行即可。如下為Fontmin的主頁(yè)面,非常簡(jiǎn)潔,只有一個(gè)文字輸入?yún)^(qū),一個(gè)字體文件選擇框,一個(gè)生成按鈕:
4.1 填入你要保留的字體
Fontmin
是一個(gè)白名單式的字體提取方式,所以你需要先收集UI程序中使用到的所有文字,包括數(shù)字符號(hào)。將其輸入到文字輸入?yún)^(qū)。如果收集起來(lái)比較麻煩或者不好枚舉,我可以給你提供一個(gè)3500字常用漢字(見(jiàn)文末的附錄),包含常用數(shù)字和符號(hào),可以覆蓋大多數(shù)場(chǎng)景。如有定制化需要,也可以在此基礎(chǔ)上進(jìn)行增刪改。
4.2 選擇字體
點(diǎn)擊字體文件選擇框,選擇你目前使用的字體即可。也可以從資源管理器直接拖拽到字體文件選擇框區(qū)域。
4.3 生成
點(diǎn)擊生成按鈕,執(zhí)行字體精簡(jiǎn)提取精簡(jiǎn)操作。
如下圖所示,字體生成成功后,會(huì)自動(dòng)打開(kāi)新字體鎖存放的目錄(注意,這是臨時(shí)目錄,如滿(mǎn)足需求及時(shí)拷貝到其它目錄下)
如下圖所示,該目錄下的ttf文件就是需要的目標(biāo)字體文件了。
5. 效果對(duì)比展示
原始字體文件為2112KB,僅保留3500常用漢字+中英文字母+常用符號(hào)之后是945KB,精簡(jiǎn)后大小不到原來(lái)的50%,效果比較明顯。
如果原字體是那種一二十MB級(jí)別的是超大型字體,收益會(huì)更加顯著,精簡(jiǎn)到原來(lái)的1/10 - 1/20都是有可能的。
6. 總結(jié)
Fontmin
是嵌入式UI開(kāi)發(fā)者的得力助手,它能夠幫助我們精簡(jiǎn)字體資源,為用戶(hù)打造更流暢的交互體驗(yàn)。在存儲(chǔ)空間有限且對(duì)性能要求極高的嵌入式開(kāi)發(fā)領(lǐng)域,Fontmin
的重要性不言而喻。
附錄
3500常用漢字+數(shù)字+符號(hào)
阿啊哎哀唉埃挨癌矮艾愛(ài)礙安氨俺岸按案暗昂凹熬傲奧澳八巴叭吧拔把壩爸罷霸白百柏?cái)[敗拜班般頒斑搬板版辦半伴扮瓣邦幫膀傍棒包胞寶飽保堡報(bào)抱豹暴爆卑杯悲碑北貝備背倍被輩奔本崩逼鼻比彼筆幣必畢閉辟碧蔽壁避臂邊編蝙鞭扁便變遍辨辯標(biāo)表別賓濱冰兵丙柄餅并病撥波玻剝播脖伯駁泊勃博搏膊薄卜補(bǔ)捕不布步部擦猜才材財(cái)裁采彩踩菜蔡參餐殘蠶慘燦倉(cāng)蒼艙藏操曹槽草冊(cè)側(cè)測(cè)策層叉插查茶察差拆柴纏產(chǎn)闡顫昌長(zhǎng)腸嘗償常廠場(chǎng)暢倡唱抄超巢朝潮吵炒車(chē)扯徹撤塵臣沉陳闖襯稱(chēng)趁撐成呈承誠(chéng)城乘懲程橙吃池馳遲持匙尺齒斥赤翅充沖蟲(chóng)崇抽仇綢愁籌酬丑瞅臭出初除廚礎(chǔ)儲(chǔ)楚處觸川穿傳船喘串窗床晨創(chuàng)吹垂錘春純唇醇詞瓷慈辭磁雌此次刺從匆蔥聰叢湊粗促催脆翠村存寸措錯(cuò)搭達(dá)答打大呆代帶待袋逮戴丹單擔(dān)膽旦但誕彈淡蛋氮當(dāng)擋黨蕩刀導(dǎo)島倒蹈到盜道稻得德的燈登等鄧凳瞪低堤滴迪敵笛底抵地弟帝遞第顛典點(diǎn)電店墊淀殿雕吊釣調(diào)掉爹跌疊蝶丁叮盯釘頂訂定丟東冬懂動(dòng)凍洞都斗抖陡豆督毒讀獨(dú)堵賭杜肚度渡端短段斷鍛堆隊(duì)對(duì)噸敦蹲盾頓多奪朵躲俄鵝額惡餓鱷恩兒而爾耳二發(fā)乏伐罰閥法帆番翻凡煩繁反返犯泛飯范販方坊芳防妨房肪仿訪紡放飛非啡菲肥廢沸肺費(fèi)分紛芬墳粉份奮憤糞豐風(fēng)楓封瘋峰鋒蜂馮逢縫鳳奉佛否夫膚孵弗伏扶服浮符幅福輻蝠撫府輔腐父付婦負(fù)附復(fù)赴副傅富賦腹覆該改鈣蓋溉概干甘桿肝趕敢感剛崗綱缸鋼港高搞稿告戈哥胳鴿割歌閣革格葛隔個(gè)各給根跟更耕工弓公功攻供宮恭鞏拱共貢勾溝鉤狗構(gòu)購(gòu)夠估咕姑孤菇古谷股骨鼓固故顧瓜刮掛拐怪關(guān)觀官冠館管貫慣灌罐光廣歸龜規(guī)硅軌鬼柜貴桂滾棍郭鍋國(guó)果裹過(guò)哈孩海害含函寒韓罕喊漢汗旱杭航毫豪好號(hào)浩耗呵喝合何和河核荷盒賀褐赫鶴黑嘿痕很狠恨哼恒橫衡轟哄紅宏洪虹鴻侯喉猴吼后厚候乎呼忽狐胡壺湖葫糊蝴虎互戶(hù)護(hù)花華嘩滑化劃畫(huà)話(huà)樺懷淮壞歡還環(huán)緩幻喚換患荒慌皇黃煌晃灰恢揮輝徽回毀悔匯會(huì)繪惠慧昏婚渾魂混活火伙或貨獲禍惑霍擊饑圾機(jī)肌雞積基跡績(jī)激及吉級(jí)即極急疾集輯籍幾己擠脊計(jì)記紀(jì)忌技際劑季既濟(jì)繼寂寄加夾佳家嘉甲賈鉀價(jià)駕架假嫁稼尖堅(jiān)間肩艱兼監(jiān)減剪檢簡(jiǎn)堿見(jiàn)件建劍健艦漸踐鑒鍵箭江姜將漿僵疆講獎(jiǎng)蔣匠降交郊嬌澆驕膠焦礁角腳攪叫轎較教階皆接揭街節(jié)劫杰潔結(jié)捷截竭姐解介戒屆界借巾今斤金津筋僅緊錦盡勁近進(jìn)晉浸禁京經(jīng)莖驚晶睛精鯨井頸景警凈徑競(jìng)竟敬境靜鏡糾究九久酒舊救就舅居局菊橘舉矩句巨拒具俱劇懼據(jù)距聚卷倦決絕覺(jué)掘嚼軍君均菌俊峻卡開(kāi)凱慨刊堪砍看康抗炕考烤靠科棵顆殼咳可渴克刻客課肯坑空孔恐控口扣枯哭苦庫(kù)褲酷夸跨塊快寬款狂況礦虧葵愧潰昆困擴(kuò)括闊垃拉啦喇臘蠟辣來(lái)萊賴(lài)蘭攔欄藍(lán)籃覽懶爛濫郎狼廊朗浪撈勞牢老樂(lè)勒雷蕾淚類(lèi)累冷愣厘梨離莉犁璃黎禮李里哩理鯉力歷厲立麗利勵(lì)例隸粒倆連簾憐蓮聯(lián)廉臉練煉戀鏈良涼梁糧兩亮輛量遼療聊僚了料列劣烈獵裂鄰林臨淋磷靈玲凌鈴陵羚零齡領(lǐng)嶺令另溜劉流留硫瘤柳六龍籠隆壟攏樓漏露盧蘆爐魯陸錄鹿碌路驢旅鋁履律慮率綠氯濾卵亂掠略倫輪論羅蘿邏螺裸洛絡(luò)駱落媽麻馬瑪碼螞罵嗎嘛埋買(mǎi)邁麥賣(mài)脈蠻滿(mǎn)曼慢漫忙芒盲茫貓毛矛茅茂冒貿(mào)帽貌么沒(méi)枚玫眉梅媒煤霉每美妹門(mén)悶們萌盟猛蒙孟夢(mèng)彌迷謎米泌秘密蜜眠綿棉免勉面苗描秒妙廟滅民敏名明鳴命摸模膜摩磨蘑魔抹末沫陌莫漠墨默謀某母畝牡姆拇木目牧墓幕慕穆拿哪內(nèi)那納娜鈉乃奶奈耐男南難囊惱腦鬧呢嫩能尼泥你擬逆年念娘釀鳥(niǎo)尿捏您寧凝牛扭紐農(nóng)濃弄奴努怒女暖挪諾哦歐偶爬帕怕拍排牌派攀盤(pán)判叛盼龐旁胖拋炮跑泡胚陪培賠佩配噴盆朋棚蓬鵬膨捧碰批披皮疲脾匹屁譬片偏篇騙漂飄瓢票拼貧頻品平評(píng)憑蘋(píng)屏瓶萍坡潑頗婆迫破剖撲鋪葡蒲樸浦普譜七妻棲戚期欺漆齊其奇歧騎棋旗企豈啟起氣棄汽契砌器恰千遷牽鉛謙簽前錢(qián)潛淺遣欠槍腔強(qiáng)墻搶悄敲喬橋瞧巧切茄且竊親侵秦琴禽勤青氫輕傾清情晴頃請(qǐng)慶窮丘秋蚯求球區(qū)曲驅(qū)屈軀趨取娶去趣圈全權(quán)泉拳犬勸券缺卻雀確鵲裙群然燃染嚷壤讓饒擾繞惹熱人仁忍認(rèn)任扔仍日絨榮容溶熔融柔肉如儒乳辱入軟銳瑞潤(rùn)若弱撒灑薩塞賽三傘散桑嗓喪掃嫂色森僧殺沙紗剎砂傻啥曬山杉衫珊閃陜扇善傷商賞上尚梢燒稍少紹哨舌蛇舍設(shè)社射涉攝申伸身深神審嬸腎甚滲慎升生聲牲勝繩省圣盛剩尸失師詩(shī)施獅濕十什石時(shí)識(shí)實(shí)拾蝕食史使始駛士氏世市示式事侍勢(shì)視試飾室是適逝釋收手守首壽受獸售授瘦書(shū)抒叔樞殊疏舒輸蔬熟暑署屬鼠薯術(shù)束述樹(shù)豎數(shù)刷耍衰摔甩帥雙霜爽誰(shuí)水稅睡順?biāo)舱f(shuō)絲司私思斯撕死四寺似飼松聳宋送頌搜艘蘇俗訴肅素速宿塑酸蒜算雖隨髓歲遂碎穗孫損筍縮所索鎖他它她塌塔踏胎臺(tái)抬太態(tài)泰貪攤灘壇談潭坦嘆炭探碳湯唐堂塘糖躺趟濤掏逃桃陶淘萄討套特疼騰藤梯踢啼提題蹄體替天添田甜填挑條跳貼鐵廳聽(tīng)廷亭庭停蜓挺艇通同桐銅童統(tǒng)桶筒痛偷頭投透突圖徒涂途屠土吐兔團(tuán)推腿退吞托拖脫駝妥拓唾挖哇蛙娃瓦歪外彎灣丸完玩頑挽晚碗萬(wàn)汪亡王網(wǎng)往忘旺望危威微為圍違唯惟維偉偽尾緯委萎衛(wèi)未位味胃謂喂慰魏溫文紋聞蚊吻穩(wěn)問(wèn)翁窩我沃臥握烏污屋無(wú)吳吾五午伍武舞務(wù)物誤悟霧夕西吸希析息犧悉惜晰稀溪錫熙嘻膝習(xí)席襲媳洗喜戲系細(xì)隙蝦瞎峽狹轄霞下嚇夏廈仙先纖掀鮮閑弦賢咸銜嫌顯險(xiǎn)縣現(xiàn)線(xiàn)限憲陷獻(xiàn)腺鄉(xiāng)相香廂湘箱詳祥翔享響想向巷項(xiàng)象像橡削消蕭硝銷(xiāo)小曉孝效校笑些歇協(xié)脅斜諧攜鞋寫(xiě)泄瀉卸屑械謝蟹心辛欣新信興星猩刑行形型醒杏姓幸性?xún)葱中傩匦坌苄菪扌咝嘈憷C袖嗅須虛需徐許序敘畜緒續(xù)蓄宣玄懸旋選穴學(xué)雪血尋巡詢(xún)循訓(xùn)訊迅壓呀鴉鴨牙芽崖啞雅亞咽煙淹延嚴(yán)言巖沿炎研鹽顏衍掩眼演厭宴艷驗(yàn)焰雁燕央揚(yáng)羊陽(yáng)楊洋仰養(yǎng)氧癢樣腰邀搖遙咬藥要耀爺也冶野業(yè)葉頁(yè)夜液一伊衣醫(yī)依儀夷宜姨移遺疑乙已以矣蟻椅義億憶藝議亦異役抑譯易疫益誼逸意溢毅翼因陰音吟銀引飲蚓隱印應(yīng)英嬰鷹迎盈營(yíng)蠅贏影映硬喲擁永泳勇涌用優(yōu)憂(yōu)幽悠尤猶由郵油游友有又右幼誘于予余魚(yú)娛漁愉愚與宇羽雨語(yǔ)玉吁育郁獄浴預(yù)域欲喻寓御裕遇愈譽(yù)豫元員園原圓袁援緣源遠(yuǎn)怨院愿曰約月岳鑰悅閱躍越云勻允孕運(yùn)暈韻蘊(yùn)雜砸災(zāi)栽宰載再在咱暫贊臟葬遭糟早棗藻灶皂造噪燥躁則擇澤責(zé)賊怎曾增贈(zèng)渣扎眨炸摘宅窄債沾粘展占戰(zhàn)站張章漲掌丈仗帳脹賬障招找召兆趙照罩遮折哲者這浙針偵珍真診枕陣振鎮(zhèn)震爭(zhēng)征掙睜蒸整正證鄭政癥之支汁芝枝知織肢脂蜘執(zhí)直值職植殖止只旨址紙指趾至志制治質(zhì)致智置中忠終鐘腫種仲眾重州舟周洲軸宙皺驟朱株珠諸豬蛛竹燭逐主煮囑住助注貯駐柱祝著筑抓爪專(zhuān)磚轉(zhuǎn)賺莊樁裝壯狀撞追準(zhǔn)捉桌著仔茲姿資滋籽子紫字自宗綜棕蹤總縱走奏租足族阻組祖鉆嘴最罪醉尊遵昨左作坐座做藹隘庵鞍黯骯拗襖懊扒芭疤捌跋靶掰扳拌絆梆綁榜蚌謗磅鎊苞褒雹鮑狽悖憊笨繃泵蹦匕鄙庇斃痹弊璧貶匾辮彪憋鱉癟彬斌繽瀕鬢秉稟菠舶渤跛簸哺怖埠簿睬慚滄糙廁蹭茬岔豺摻攙禪饞蟬鏟猖敞鈔嘲澈忱辰鐺澄逞秤癡弛侈恥寵疇稠鋤雛櫥矗揣囪瘡炊捶椿淳蠢戳綽祠賜醋簇竄篡崔摧悴粹搓撮挫瘩歹怠貸耽檔叨搗禱悼蹬嘀滌締蒂掂滇巔碘佃甸玷惦奠刁叼迭諜碟鼎董棟兜蚪逗痘睹妒鍍緞兌墩盹囤鈍咄哆踱垛墮舵惰跺訛娥峨蛾扼鄂愕遏噩餌貳筏礬妃匪誹吠吩氛焚忿諷敷芙拂俘袱甫斧俯脯咐縛尬丐柑竿尷稈橄贛岡肛杠羔膏糕鎬疙擱蛤庚羹埂耿梗蚣躬汞茍垢沽辜雇寡卦褂乖棺逛閨瑰詭癸跪亥駭酣憨涵悍捍焊憾撼翰夯嚎皓禾烘弘弧唬滬猾徊槐宦渙煥瘓凰惶蝗簧恍謊幌卉諱誨賄晦穢葷豁譏嘰唧緝畸箕稽棘嫉妓祭鯽冀頰奸殲煎揀儉柬繭撿薦賤澗濺檻韁槳醬椒跤蕉僥狡絞餃矯剿繳窖酵秸睫芥誡藉襟謹(jǐn)荊兢靖窘揪灸玖韭臼疚拘駒鞠桔沮炬鋸娟捐鵑絹眷訣倔崛爵鈞駿竣咖揩楷勘坎慷糠扛亢拷銬坷苛磕蝌墾懇啃吭摳叩寇窟垮挎筷筐曠框眶盔窺魁饋坤捆廓睞婪瀾攬纜欖瑯榔嘮姥澇烙酪壘磊肋擂棱貍漓籬吏瀝俐荔栗礫痢靂鐮斂粱諒晾寥嘹撩繚瞭咧琳鱗凜吝賃躪拎伶聆菱瀏琉餾榴嚨朧聾窿婁摟簍陋廬顱鹵虜賂祿呂侶屢縷巒掄侖淪啰鑼籮騾蟆饅瞞蔓莽錨卯昧媚魅氓朦檬錳咪靡瞇覓緬瞄渺藐蔑皿閩憫冥銘謬饃摹茉寞沐募睦暮捺撓瑙吶餒妮匿溺膩捻攆碾聶孽擰獰檸濘鈕膿瘧虐懦糯毆鷗嘔藕趴啪耙徘湃潘畔乓螃刨袍沛砰烹彭澎篷坯劈霹啤僻翩撇聘乒坪魄仆菩圃瀑曝柒凄祈臍崎鰭乞迄泣掐洽鉗乾黔譴嵌歉嗆蹺鍬僑憔俏峭竅翹撬怯欽芹擒寢沁卿蜻擎瓊囚嶇渠痊瘸冉瓤壬刃紉韌戎茸蓉榕冗揉蹂蠕汝褥蕊閏腮叁搔騷臊澀瑟鯊煞霎篩刪煽擅贍裳晌捎勺奢赦呻紳沈笙甥矢屎恃拭柿嗜誓梳淑贖蜀曙恕庶墅漱蟀拴栓涮吮爍碩嗽嘶巳伺祀肆訟誦酥粟溯隋祟隧唆梭嗦瑣蹋苔汰癱痰譚檀毯棠膛倘淌燙滔謄剔屜剃涕惕恬舔迢帖彤瞳捅凸禿頹蛻褪屯豚臀馱鴕橢洼襪豌宛婉惋皖腕枉妄偎薇巍帷葦畏尉猬蔚瘟紊嗡渦蝸嗚巫誣蕪梧蜈侮捂鵡勿戊昔犀熄蟋徙匣俠暇餡羨鑲宵瀟簫霄囂淆肖哮嘯蝎邪挾懈芯鋅薪馨釁腥洶銹戌墟旭恤酗婿絮軒喧癬炫絢渲靴薛勛熏旬馴汛遜殉丫押涯衙訝焉閻蜒檐硯唁諺堰殃秧鴦漾夭吆妖堯肴姚窯謠舀椰腋壹怡貽胰倚屹邑繹姻茵蔭殷寅淫癮鶯櫻鸚熒瑩螢穎傭庸詠踴酉佑迂淤渝隅逾榆輿嶼禹芋冤鴛淵猿苑粵耘隕醞哉贓鑿蚤澡憎咋喳軋閘乍詐柵榨齋寨氈瞻斬盞嶄輾棧綻彰樟杖昭沼肇轍蔗貞斟疹怔猙箏拯吱侄幟摯秩擲窒滯稚衷粥肘帚咒晝拄矚蛀鑄拽撰妝幢椎錐墜綴贅諄?zhàn)孔咀谱聺嶙米淖磷涉⒆嶙渥?234567890-=!@#¥%……&*()~:"{}[]|?/<>,.;’+abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ