精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

解析 Qt 字庫移植并能顯示中文 (上篇)

移動開發
本文介紹的是Qt 字庫移植并能顯示中文,需要的字體庫文件,一般是多個。具體移植那一個,看你使用的字庫是什么了,先來看內容。

Qt 字庫移植并能顯示中文是本文介紹的內容,先來看內容,如何定制字庫移植字庫),需要將至少兩個文件賦值到 lib/font目錄下
   
1、fontdir 文件。這個是應用程序尋找當前系統中最合適自己需要的字庫的索引;

2、需要的字庫文件,一般是多個。具體移植那一個,看你使用的字庫是什么了,比如我現在的系統我就是移植的wenquanyi_12pt.bdf就可以了,當然這個比較大。你也可以用小點的。我的flash比較大呵呵,懶得折騰。

在程序中需要這樣設置:

  1. QTextCodec::setCodecForTr(QTextCodec::codecForName("utf8"));  
  2.    QTextCodec::setCodecForCStrings(QTextCodec::codecForName("utf8")); 

設置使用utf-8編碼也就是unicode編碼了,這樣在tr和string的都是unicode的編碼了,根據字庫的索引就能對應相應的字符了。

然后設置字體:

  1. //字體設置  
  2.      QFont font("wenquanyi",12,QFont::Bold); //使用wenquanyi字體  
  3.      this->setFont(font);  
  4. //這樣就設置了字體了,中文一般使用wenquanyi字體就可以了。很好的。 

基礎知識介紹:

字符編碼

1、字符必須編碼后才能被計算機處理。計算機使用的缺省編碼方式就是計算機的內碼。早期的計算機使用7位的ASCII編碼,為了處理漢字,程序員設計了用于簡體中文的GB2312和用于繁體中文的big5。在這些編碼中,中文和英文可以統一的處理,區分中文編碼的方法是高字節的***位為不為0。GB內碼的存儲方式始終都是big endian,即高位在前。

2、Unicode是一種字符編碼方法,它是由國際組織設計,可以容納全世界所有語言文字的編碼方案。Unicode的學名是"Universal Multiple-Octet Coded Character Set",簡稱為UCS。UCS可以看作是"Unicode Character Set"的縮寫。

Unicode與GB碼不兼容,只與ASCII兼容。

UCS規定了怎么用多個字節表示各種文字。怎樣傳輸這些編碼,是由UTF(Unicode transforation format)規范規定的。常見的UTF規范包括UTF-8(就是以8位為單元對UCS進行編碼)、UT F-7、UTF-16。
UTF-*和Unicode是同類,就是在編碼方式上不同。首先UTF編碼后的大小是不一定,不像Unicode編碼后的大小是一樣的。

字體庫:

一般認為,一個漢字的編碼就對應著這樣的字形,這還是錯誤的。內碼對于字庫來說,只是查找字形的索引。如果換成另一個編碼標準的字體,同一個字符串就會呈現不同的字形,也就是亂碼。
隨著GUI的發展,字庫逐漸轉向TTF.TTF字庫的編碼標準沒有UTF8的

由于工作需要把ttf字體轉換成qpf字體,牽扯到了qt的makeqpf工具的使用方法

先簡單說一下qt的字體支持

Qte可以支持以下四種形態的字體格式

  1. TrueType (TTF)、Postscript Type(PFA/PFB)、Bitmap Distribution Format fonts(BDF)、Qt Prerendered Font(QPF) 

Qt中不同字體是用Unicode來處理、轉換

因為Unicode(UTF16或者UTF8)最適合在任何人之間傳遞信息,

至于TrueType(不知道是什么東西,先唬著?)的支援,目前Qte采用的是FreeType2 Livrary來顯示字體,可充分享受無段式anti-aliased顯示。

經過下午的查證:Truetype是由AppleComputer公司和Microsoft公司聯合提出的一種新型數學字形描述技術。他用數學函數描述字體輪廓外形,含有字形構造、顏色填充、數字描述函數、流程條件控制、珊格處理控制、附加提示控制等指令。TrueType采用幾何學中二次B樣條曲線及直線來描述字體的外形輪廓,其特點是:TrueType即可以作打印字體又可以做屏幕顯示;由于它是由指令對字形進行描述,因此它與分辨率無關,輸出時總是按照打印機的分辨率輸出。無論放大或縮小,字符總是光滑的,不會有鋸齒出現。但相對PostScript字體來說,其質量要差一些,特別是在文字太小時,就表現得不是很清楚

簡單 一下:truetype,字體就是可以不變形放大的字體,標準的字體大約有三種。*.fon 、*.ttf 、*.ttc,你所問的就是*.ttf 、*.ttc是*.ttf的新標準。*.fon就是很久以前用的字體,dos下現windows還有少量,主要用在系統使用方面可以提高程序的執行效率

FreeType是一個免費的并且可以被移植的TrueType 字庫引擎,可以應用于很多平臺!

fontdir的簡介

下面是截取qtcore中默認的fontdir文件中的中文字庫部分

  1. #Chinese character font from http://wqy.sourceforge.net/en  
  2. wenquanyi wenquanyi_12pt.bdf BDF n 50 120 u  
  3. wenquanyi wenquanyi_13pt.bdf BDF n 50 130 u  
  4. wenquanyi wenquanyi_15pt.bdf BDF n 50 150 u  
  5. wenquanyi wenquanyi_16pt.bdf BDF n 50 160 u  
  6. wenquanyi wenquanyi_12ptb.bdf BDF n 75 120 u  
  7. wenquanyi wenquanyi_13ptb.bdf BDF n 75 130 u  
  8. wenquanyi wenquanyi_15ptb.bdf BDF n 75 150 u  
  9. wenquanyi wenquanyi_16ptb.bdf BDF n 75 160 u 

可以看到共有七列

  1. ***列:字體的名字,就是你在設置字體的時候的字體的名字  
  2. 第二列: (file)即具體的文件名字  
  3. 第三列: (renderer)字體的格式,有BDF,TTT,QPF等選擇.  
  4. 第四列: n 表示iitalic,是否為斜體  
  5. 第五列:weight, 50 = Nomal,75=Bold 
  6. 第六列: size 120表示12pt  
  7. 第七列flags 有三個選項:s   (smooth)  
  8.                               u   (unicode順序保存)  
  9.                                
  10.                              a   (ascii 順序保存,默認是Latin 1)。 

文件中每行都標識一個特定的字庫,每個段的含義是:***列為name,第二列為file,第三列為renderer,相當于字型格式,所以有 BDF,TTT,QPF等選擇。第四列n表示iitalic,表示是否為斜體字。第五列表示weight,其中50表示Normal,75表示Bold。第六列表示size,例如:120表示12pt。第七列為flags,有下面三個選擇:s=smooth(anti-aliased)u =unicode range when saving (default is Latin 1 a = ASCII range when saving(default is Latin 1))

其中屬性file,renderer(BDF,TTF,QPF)和size特別要設置對,其它屬性問題不大。還要注意如果在該目錄下有QPF的文件,系統只會使用QPF格式的文件,而不會讀取其它格式的文件,不管FONTDIR里面的內容是什么。如果有多個QPF文件,應用程序按照大小,家族,黑體和斜體的順序查找,即首先查找大小和自己一樣的字庫,大小無法區分唯一的字庫的再看對應的家族,還是無法區分的再看是否黑體,是否斜體。可以參考PC上的字庫索引文件FONTDIR:

例如:

  1. -cclib -song -medium -r -normal -jiantizi -16 -160 -75 -75 -c -160 -gb2312 1980-0

其中,每個段的含義如下:

  1. cclib:制造商  
  2. song:字體族,此處表示“宋體”字  
  3. medium:字權重(中等),還有bold(粗體)選項  
  4. r:傾斜,R(Roman),I(Italic),O(Oblique)  
  5. normal:字符集寬度,此外還有condensed,narrow,double  
  6. jiantizi:附加說明(此處意義為“簡體字”)  
  7. 16:用像素衡量的寬度。  
  8. 160:點數 10  
  9. 75(1):水平分辨率(dpi)  
  10. 75(2):垂直分辨率(dpi)  
  11. c:間距。c:square,m:fixed width,p:variable width  
  12. 160:平均寬度(10*pixels)  
  13. gb2312.1980:注冊字符集,標準名 

小結:解析 Qt 字庫移植并能顯示中文 (上篇)的內容介紹完了,希望本文對你有所幫助,想要深入了解,請參考 解析 Qt 字庫移植并能顯示中文 (下篇)

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-06-30 16:08:05

Qt 字庫 QPF

2011-06-22 14:30:44

QT 多線程 線程

2011-06-17 09:19:03

Qt 4.5.1 Sqlite 移植

2011-06-29 10:46:01

Qt Eembedded Linux

2011-06-21 15:48:41

2011-06-27 10:15:22

Qt 網絡 TCP

2011-06-24 13:08:34

Qt Qt 4.5.3 移植

2011-06-13 11:24:55

QT MPlayer 移植

2011-06-13 16:16:32

Qt 中文問題

2011-06-13 11:07:22

QT 移植

2011-07-05 18:32:52

QT 信號 機制

2011-06-23 16:24:21

Qt Embedded 交叉編譯

2011-07-01 14:14:34

Qt 事件

2011-04-07 17:27:52

Policing

2011-04-07 17:39:57

Shapping

2011-06-17 16:47:12

Qt Eclipse Windows

2011-06-17 13:18:17

Qt 文件

2011-06-09 16:47:56

Qt 嵌入式

2011-06-27 13:32:21

Qt 數據庫 QSqlQueryM

2011-06-15 18:20:20

Qt 移植 Android
點贊
收藏

51CTO技術棧公眾號

色成年激情久久综合| 91小视频在线免费看| 美女精品久久久| 少妇被狂c下部羞羞漫画| 欧美三级网站| 久久日韩粉嫩一区二区三区 | 日本三级午夜理伦三级三| 色哟哟精品丝袜一区二区| 欧美日韩国产一二三| 日韩黄色片在线| 经典三级在线| 国产福利精品导航| 国产成人短视频| 毛片a片免费观看| 激情婷婷综合| 亚洲第五色综合网| 色免费在线视频| 日本三级一区| 一级中文字幕一区二区| 亚洲高清视频一区二区| 色呦呦免费观看| 国产一区二区三区蝌蚪| 欧美一级片免费在线| 国产精品 欧美激情| 精品国产精品久久一区免费式 | 男女网站在线观看| 国产成人免费视| 国产日本欧美一区| av一级在线观看| 亚洲激情视频| 久久97精品久久久久久久不卡 | 奇米影视888狠狠狠777不卡| 国产91对白在线观看九色| 国产一区视频在线播放| 无码人妻aⅴ一区二区三区有奶水| 韩国av一区| 久久福利网址导航| fc2ppv在线播放| 国产探花在线精品一区二区| 亚洲国产免费av| 动漫av在线免费观看| 精品成人18| 欧美精品v国产精品v日韩精品| 粉嫩虎白女毛片人体| 亚洲欧美韩国| 色婷婷久久久久swag精品| 131美女爱做视频| √8天堂资源地址中文在线| 亚洲黄网站在线观看| 亚洲一卡二卡三卡四卡无卡网站在线看 | 欧美福利一区二区三区| 天堂中文在线视频| 99久久99久久免费精品蜜臀| 国产精品一区免费观看| 日本高清视频在线| 不卡在线视频中文字幕| 精品国产第一页| 亚洲欧美综合在线观看| jizz一区二区| 蜜桃传媒视频麻豆第一区免费观看| 色窝窝无码一区二区三区| 国产激情在线观看| 久久免费偷拍视频| 麻豆av福利av久久av| 五月婷婷狠狠干| 不卡的av网站| 欧美日韩一区在线播放| 香蕉视频在线免费看| 国产精品九色蝌蚪自拍| 中文字幕欧美日韩一区二区三区| 欧美96在线| 一区二区三区四区在线免费观看 | 538视频在线| 午夜激情综合网| 人妻熟女一二三区夜夜爱| 激情开心成人网| 欧美精品乱码久久久久久按摩| 欧美性受xxxx黒人xyx性爽| 日韩精品一区二区三区中文在线 | 日本aaa视频| 成人影视亚洲图片在线| 麻豆成人在线看| 欧美成人精品欧美一级乱黄| 爽好多水快深点欧美视频| 国产精品揄拍500视频| 国产成人麻豆精品午夜在线| 成人国产精品免费观看| 日本一区二区高清视频| 中文字幕在线观看播放| 欧美日韩性视频| gogogo高清免费观看在线视频| 日韩影片在线观看| 国产丝袜一区二区三区免费视频| 自拍偷拍第9页| 亚洲少妇自拍| 国产日韩欧美中文在线播放| 空姐吹箫视频大全| 欧美国产1区2区| 一卡二卡三卡视频| 精品无人乱码一区二区三区| 日韩欧美成人激情| 91在线无精精品白丝| 午夜视频一区| 国产精品入口免费视频一| 亚洲淫片在线视频| 亚洲一级片免费| 999国产精品一区| 一区二区三区天堂av| 黄色一级视频在线观看| 美女国产一区二区三区| 久久99精品国产一区二区三区| 蜜桃av在线免费观看| 黑人巨大精品欧美一区二区| 国产毛片久久久久久| 精品国产一区二区三区| 77777少妇光屁股久久一区| 91麻豆成人精品国产免费网站| 91片黄在线观看| 欧美做暖暖视频| 不卡的国产精品| 国产一区二区免费| 日韩久久中文字幕| hitomi一区二区三区精品| 国产内射老熟女aaaa| www.成人在线视频| 精品一区二区三区电影| 久久婷婷一区二区| 国产精品一区二区在线看| 亚洲精品视频一二三| 欧美大片免费高清观看| 日韩精品一二三四区| 日本少妇吞精囗交| 国产不卡免费视频| 男同互操gay射视频在线看| 久久精品超碰| 日韩有码在线视频| 中文字字幕在线中文乱码| 国产清纯白嫩初高生在线观看91| 男人添女人下面高潮视频| 国产精品白丝av嫩草影院| 欧美大片免费看| xxxx国产精品| 一区二区三区在线免费| 爱情岛论坛亚洲自拍| 一区二区日韩欧美| 91久久精品一区二区别| 国产在线高清视频| 91精品黄色片免费大全| 色欲一区二区三区精品a片| 狠狠色丁香久久婷婷综| 国产日本欧美在线| 日韩免费成人| 欧美黑人性视频| 秋霞网一区二区| 精品久久久久久| 亚洲AV无码片久久精品| 日本特黄久久久高潮 | 99久久九九| 91精品在线一区| 亚洲第一图区| 亚洲国产高清自拍| 国产美女激情视频| 亚洲国产精品v| 免费av不卡在线| 你懂的成人av| 国产在线精品一区二区三区》| 日韩av影片| 国产一级揄自揄精品视频| 中文字幕第2页| 日韩理论片在线| 午夜福利三级理论电影| 亚欧美中日韩视频| 色女孩综合网| 51亚洲精品| 青青久久aⅴ北条麻妃| 大乳在线免费观看| 日韩一区二区免费高清| 日本三级一区二区| 国产精品美女久久久久久久久 | 久久国产加勒比精品无码| 亚洲精品国产精品国| 狠狠躁夜夜躁人人爽超碰91| 欧美日韩国产黄色| 国产mv日韩mv欧美| 国产免费人做人爱午夜视频| 国产精品久久占久久| 国产区一区二区| 精品福利在线| 亚洲91精品在线| 色影视在线观看| 精品国产sm最大网站免费看| 日韩精品在线一区二区三区| 亚洲另类在线视频| 最近中文字幕免费视频| 国产成人精品影院| 成年人在线看片| 欧美亚洲不卡| 色播亚洲视频在线观看| eeuss鲁片一区二区三区| 国产精品www网站| 福利写真视频网站在线| 中文字幕精品久久| 色一情一乱一乱一区91av| 7777精品伊人久久久大香线蕉的| 日本免费观看视| 一个色综合网站| 精品一区二区6| 99久久99精品久久久久久| www.国产福利| 三级久久三级久久| 青青艹视频在线| 欧美一区不卡| 亚洲欧洲一区二区福利| 巨人精品**| 99在线免费观看视频| 久久er热在这里只有精品66| 欧美最猛黑人xxxx黑人猛叫黄| 欧美人动性xxxxz0oz| 日韩中文字幕精品| 国产三级在线观看| 亚洲黄色av女优在线观看 | 亚洲美女视频网| 国产18精品乱码免费看| 91精品国产高清一区二区三区蜜臀| 黄色av网站免费观看| 精品久久久久久电影| 精品视频久久久久| 亚洲精品欧美专区| 久久中文免费视频| 亚洲欧美视频在线观看视频| 婷婷丁香综合网| 中文字幕二三区不卡| 在线免费观看麻豆| 久久精品水蜜桃av综合天堂| 超碰97在线资源站| k8久久久一区二区三区| 亚洲中文字幕一区| 91亚洲大成网污www| 成人性生活免费看| 不卡的av电影在线观看| 国产伦精品一区二区三区88av| 国产河南妇女毛片精品久久久| www.久久久久久久久久久| 久久精品国产在热久久| 欧美成人三级在线播放| 免费精品99久久国产综合精品| 成年人小视频网站| 青青草国产成人99久久| 天天干天天综合| 激情文学综合丁香| 亚洲欧美日韩网站| 国产成人免费网站| 国产伦精品一区二区三区88av| 不卡在线观看av| 好吊一区二区三区视频| 久久久久亚洲综合| 人人爽人人爽人人片| 国产精品久久精品日日| 2018天天弄| 亚洲一区二区三区视频在线| 国产在线成人精品午夜| 天天操天天干天天综合网| 欧美激情黑白配| 欧美日韩综合不卡| 国产色在线视频| 精品粉嫩超白一线天av| 亚洲欧美日韩成人在线| 国产亚洲欧美日韩一区二区| 欧美一区二区三区| 欧美精品亚州精品| cao在线视频| 国产精品1区2区在线观看| 亚洲伦理网站| 国产91一区二区三区| 麻豆精品少妇| 亚洲高清精品中出| 欧美一区二区三区免费看| 人妻夜夜添夜夜无码av| 日韩高清不卡在线| 国产探花在线观看视频| 91蜜桃视频在线| 91香蕉视频污在线观看| 亚洲国产aⅴ成人精品无吗| 伊人手机在线视频| 91精品国产高清一区二区三区| 天天操天天操天天干| 尤物精品国产第一福利三区 | 99久久99久久精品国产片果冰| 真人做人试看60分钟免费| 亚洲欧美视频| 黄页网站在线看| 亚洲国产高清在线| 国产主播在线播放| 欧美日韩国产bt| 神马午夜精品95| 日韩视频―中文字幕| 精品人人视频| 91精品久久久久| 西野翔中文久久精品字幕| 婷婷视频在线播放| 亚洲尤物精选| 精品1卡二卡三卡四卡老狼| 中文字幕电影一区| 国产精品777777| 精品三级av在线| 麻豆tv在线| 国产精品96久久久久久| 丁香婷婷成人| 国产91av视频在线观看| 老**午夜毛片一区二区三区| 91超薄肉色丝袜交足高跟凉鞋| 国产精品美女一区二区| 亚洲自拍一区在线观看| 精品国产a毛片| а√天堂在线官网| 国产精品久久久久免费a∨| 精品伊人久久久| 女人床在线观看| 久久99精品一区二区三区 | 国内亚洲精品| 鲁一鲁一鲁一鲁一澡| 成人永久免费视频| 成人性生活毛片| 欧美日本在线播放| 69视频在线| 国产精品海角社区在线观看| 欧美毛片免费观看| 婷婷无套内射影院| 成人在线一区二区三区| 久久免费视频播放| 日韩欧美国产成人一区二区| 黄色网页在线免费看| 91精品久久久久久久久久另类| 欧美码中文字幕在线| 成年人视频网站免费观看| 不卡的电视剧免费网站有什么| 精国产品一区二区三区a片| 91精品国产色综合久久久蜜香臀| 黄色网页网址在线免费| 91九色单男在线观看| 午夜激情久久| 国产精品久久久久久9999| 国产精品第13页| 99久久精品国产成人一区二区| 日韩一区二区精品视频| 成人国产精品久久| 欧美精品一区二区性色a+v| 国产一区二区精品久久99| 成人在线观看免费完整| 欧美一区二区啪啪| 欧美wwww| 国产精品yjizz| 99riav1国产精品视频| 久久亚洲AV成人无码国产野外| 日韩欧美999| av中文天堂在线| 91中文字幕一区| 欧美日韩1区| 无码人妻精品一区二区三区温州| 欧美日韩美女在线| 国际av在线| 成人在线中文字幕| 综合在线一区| jlzzjizz在线播放观看| 一本大道久久a久久精品综合| 啊v视频在线| 91在线看www| 99国产成+人+综合+亚洲欧美| 女尊高h男高潮呻吟| 欧美在线看片a免费观看| 欧美性videos| 国产欧美日本在线| 日韩av在线免费观看不卡| 很污很黄的网站| 亚洲精品一区在线观看| 爱情电影社保片一区| 日韩视频在线免费播放| 99精品在线免费| 91久久精品国产91性色69| 久久久久久久国产精品| 国产亚洲一区二区三区啪| 国产探花在线看| 调教+趴+乳夹+国产+精品| 成年人在线观看视频| 97久久精品午夜一区二区| 午夜宅男久久久| 亚洲 欧美 变态 另类 综合| 亚洲国产精品99| 日韩毛片免费视频一级特黄| 东北少妇不带套对白| 国产日韩欧美精品在线| 亚洲精品国产精| 国产精品女人网站| 亚洲欧洲另类| 91免费在线看片| 精品亚洲一区二区三区| 精品国产伦一区二区三区观看说明 | 欧美日韩国产综合一区二区| 白白色在线观看| www.午夜色|