應(yīng)該有很多人計(jì)算不準(zhǔn)吧。網(wǎng)上也有給出很多公式,這里給出一個(gè)目前我認(rèn)為最好理解的解釋及公式。這里有知乎上面的一個(gè)解答:
UI 設(shè)計(jì)師提供 iOS 字體和長度應(yīng)當(dāng)用什么單位? - 梁海的回答
個(gè)人的進(jìn)一步理解
設(shè)計(jì)師一般會(huì)說,這里的字體是32像素,如果你做的項(xiàng)目足夠多,合作的UI設(shè)計(jì)師不同時(shí),可能32像素以你的理解,轉(zhuǎn)換出來后的大小,這些設(shè)計(jì)師可能會(huì)不太喜歡這個(gè)效果。其實(shí)這個(gè)表述是不準(zhǔn)的。
根據(jù)剛剛貼子的理解,我們可以發(fā)現(xiàn):設(shè)計(jì)師描述的字體大小其實(shí)是相對(duì)的。
這個(gè)大小與設(shè)計(jì)師新建文檔時(shí)填寫的分辨率(PPI)有關(guān)系,一般設(shè)計(jì)師會(huì)以72 PPI 來設(shè)計(jì),而有的設(shè)計(jì)師是以144來設(shè)計(jì)。
同時(shí)PS的文字單位又有PT和PX之分。所以,一般與初合作的UI設(shè)計(jì)師交流時(shí),最好先定義好設(shè)計(jì)稿是在哪個(gè)分辨率下的像素還是點(diǎn)大小。
下面給出公式:
IOS開發(fā)大小(pt) = 設(shè)計(jì)稿PPI / 你設(shè)定的PPI * PT
同時(shí),一般IOS開發(fā),我們是以高清屏來開發(fā)的,所以我們設(shè)定的PPI就是 144 。所以公式就是這樣的
IOS開發(fā)大小(pt) = 設(shè)計(jì)稿PPI / 144 * PT
在PS設(shè)計(jì)中,72PPI的分辨率下,PT和PX是 1:1 。所以我們的公式就可以得出兩個(gè)。
1、PT公式
IOS開發(fā)大小(pt) = 設(shè)計(jì)稿PPI / 144 * PT
2、PX公式
IOS開發(fā)大小(pt) = 設(shè)計(jì)稿PPI / 144 *((設(shè)計(jì)稿PPI / 72) * PX)
3、運(yùn)用
// 設(shè)計(jì)師說大小是 72 ppi 下的 28 pt ,我們套用公式一
CGFloat fontSize = 72/144*28; // 可以得出開發(fā)大小是 14 pt
// 設(shè)計(jì)師說大小是 72 ppi 下的 28 px ,套用公式二
// 因?yàn)?2分辨率下px:pt 是1:1的關(guān)系,所以我們也可以直接使用公式一
fontSize = 72/144*((72/72)*28); // 可以得出開發(fā)大小是 14 pt
// 設(shè)計(jì)師說大小是 144 ppi 下的 14 pt ,套用公式一
fontSize = 144/144*14; // 可以得出開發(fā)大小是 14 pt
// 設(shè)計(jì)師說大小是 144 ppi 下的 28 px ,套用公式二
fontSize = 144/144*((144/72)*28); // 可以得出開發(fā)大小是 56 pt