Qt 字体字号和字体像素关系
此文章轉(zhuǎn)載自多篇文章,不全部都是qt相關(guān)的
轉(zhuǎn)載僅供自己學(xué)習(xí)使用,如果有侵權(quán)請(qǐng)及時(shí)聯(lián)系刪除
字體號(hào)數(shù)與像素對(duì)應(yīng)關(guān)系
英文字體的1磅,相當(dāng)于1/72 英寸,約等于1/2.8mm。 12PT的字打印出來約為4.2mm。網(wǎng)頁中12px的字才相當(dāng)于12像素。
雖然 四號(hào)=(14/72)*96=18.6px 更接近 19px,但是因?yàn)?18px 是點(diǎn)陣,所以系統(tǒng)還是優(yōu)先顯示點(diǎn)陣字號(hào)的。
換句話說:四號(hào)=18px 中文字號(hào)VS英文字號(hào)(磅)VS像素值的對(duì)應(yīng)關(guān)系:
中文字號(hào)VS英文字號(hào)(磅)VS像素值的對(duì)應(yīng)關(guān)系:
八號(hào)=5磅(5pt) ==(5/72)*96=6.67 =6px
七號(hào)=5.5磅 ==(5.5/72)*96=7.3 =7px
小六=6.5磅 ==(6.5/72)*96=8.67 =8px
六號(hào)=7.5磅 ==(7.5/72)*96=10px
小五=9磅 ==(9/72)*96=12px
五號(hào)=10.5磅 ==(10.5/72)*96=14px
小四=12磅 ==(12/72)*96=16px
四號(hào)=14磅 ==(14/72)*96=18.67 =18px
小三=15磅 ==(15/72)*96=20px
三號(hào)=16磅 ==(16/72)*96=21.3 =21px
小二=18磅 ==(18/72)*96=24px
二號(hào)=22磅 ==(22/72)*96=29.3 =29px
小一=24磅 ==(24/72)*96=32px
一號(hào)=26磅 ==(26/72)*96=34.67 =34px
小初=36磅 ==(36/72)*96=48px
初號(hào)=42磅 ==(42/72)*96=56px
轉(zhuǎn)載自:https://blog.csdn.net/mao0514/article/details/88553680
?
?
Qt 字體大小的計(jì)算
在QFont當(dāng)中有兩種方式設(shè)置字體大小,一種是PixelSize,另一種是PointSize
Point實(shí)際是磅,也就是 1/72 inch
我們可以從PainterDevice中得到當(dāng)前DPI(Dot per inch)。因此 Pixel = DPI * Point / 72
例如設(shè)置字體為20Point。 那么字體的像素大小是 90 * 20 / 72 約等于 25.
| ? |
可以將字體設(shè)置為25Pixel,看到字體的大小就是20Point和25Pixel大小是一樣的。
QFont當(dāng)中設(shè)置的大小,實(shí)際上字體的高度,由如下組成。
由PixelSize設(shè)置的高度,實(shí)際是Asent + 1像素(baseline的高度)。
在字體大小中涉及了以下知識(shí):
DPI: Dot per inch,在顯示器上也就是每英寸包含的像素。英尺的換算為 1 cm = 0.39 inch, 1 inch = 2.54 cm。
DPI 可以通過如下計(jì)算得來:
水平 dpi = 水平 resolution * 2.54 / 顯示器寬度
垂直 dpi = 垂直 resolution * 2.54 / 顯示器高度
pixel pitch(點(diǎn)距): 像素點(diǎn)間距離??梢杂?5.4mm / DPI得到。
字體在屏幕上的實(shí)際大小 = 字體像素大小 * 點(diǎn)距
大部分顯示器的DPI為90.6左右,垂直和水平點(diǎn)距可能不一樣。但windows為了方便就同一了點(diǎn)距,為96。我當(dāng)前使用的Ubuntu的點(diǎn)距也是96。因此如果想要看到更大的字體可以使用更大的點(diǎn)距。
終于弄明白了 pixel size 是所占的像素大小 ?這樣有一個(gè)缺點(diǎn) 有些顯示器的分辨率(dpi)比較大 ?那么單位長度中的像素點(diǎn)就比較多 這樣一個(gè)字所占的長度就會(huì)比較少
而 point size 則規(guī)定了實(shí)際中我們?nèi)庋劭吹降淖煮w的大小 他和pixel無關(guān)的~ 他和顯示器無關(guān) ?不管在什么樣上的顯示器上 規(guī)定大小是多少就是多少...
解決setPointSize字太小的問題
在UI編輯器里,并沒有setPixelSize的設(shè)置,只有setPointSize。如果要在開發(fā)板上顯示正常的字號(hào),必須要將PointSize設(shè)得很大,那么在計(jì)算機(jī)上的字就變得超大,無法通過ui編輯器達(dá)到所見即所得的效果。前面我們說過,這是因?yàn)轱@示器DPI不同的原因。在QT應(yīng)用中,可通過環(huán)境變量來設(shè)置DPI,如下:
export QWS_DISPLAY="LinuxFB:mmWidth95:0" export QWS_SIZE="640x480"重新啟動(dòng)QT應(yīng)用程序時(shí),發(fā)現(xiàn)字號(hào)和計(jì)算機(jī)上的字號(hào)相差不那么大了,95的值并不是很準(zhǔn)確,需要跟據(jù)顯示器來調(diào)整,輸入合適的DPI值,(我用群創(chuàng)AT056TN53的屏,DPI值設(shè)置為180比較合適)
詳細(xì)可見:http://doc.qt.digia.com/4.6/qt-embedded-displaymanagement.html
轉(zhuǎn)自:http://losemyheaven.blog.163.com/blog/static/17071980920111283934557/
轉(zhuǎn)載自:https://blog.csdn.net/liuqz2009/article/details/7208931
?
?
?
字體大小和網(wǎng)頁像素之間的關(guān)系
https://www.cnblogs.com/daniel-lij/p/6519539.html
1.字體大小與網(wǎng)頁像素對(duì)照表
| 中文字號(hào) | 英文字號(hào)(磅單位:pt ) | 毫米(單位:mm) | 像素(單位:px) |
| 1英寸 | 72 | 25.3 | 95.6 |
| 大特號(hào) | 63 | 22.14 | 83.7 |
| 特號(hào) | 54 | 18.97 | 71.7 |
| 初號(hào) | 42 | 14.82 | 56 |
| 小初 | 36 | 12.70 | 48 |
| 1號(hào) | 26 | 9.17 | 34.7 |
| 小一 | 24 | 8.47 | 32 |
| 2號(hào) | 22 | 7.76 | 29.3 |
| 小二 | 18 | 6.35 | 24 |
| 三號(hào) | 16 | 5.46 | 21.3 |
| 小三 | 15 | 5.29 | 20 |
| 四號(hào) | 14 | 4.94 | 18.7 |
| 小四 | 12 | 4.23 | 16 |
| 五號(hào) | 10.5 | 3.70 | 14 |
| 小五 | 9 | 3.18 | 12 |
| 六號(hào) | 7.5 | 2.56 | 10 |
| 小六 | 6.5 | 2.29 | 8.7 |
| 七號(hào) | 5.5 | 1.94 | 7.3 |
| 八號(hào) | 5 | 1.76 | 6.7 |
總結(jié)
以上是生活随笔為你收集整理的Qt 字体字号和字体像素关系的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 攻防世界web新手-easyphp
- 下一篇: DT时代,大数据常用的软件工具有哪些?