一,ps和pt轉換 px:相對長度單位。像素(Pixel)。(PS字體) pt:絕對長度單位。點(Point)。(iOS字體) 公式以下: pt=(px/96)*72。
二,字體間轉換 1in = 2.54cm = 25.4 mm = 72pt = 6pc 具體換算是: Points Pixels Ems Percent 6pt 8px 0.5em 50% 7pt 9px 0.55em 55% 7.5pt 10px 0.625em 62.5% 8pt 11px 0.7em 70% 9pt 12px 0.75em 75% 10pt 13px 0.8em 80% 10.5pt 14px 0.875em 87.5% 11pt 15px 0.95em 95% 12pt 16px 1em 100% 13pt 17px 1.05em 105% 13.5pt 18px 1.125em 112.5% 14pt 19px 1.2em 120% 14.5pt 20px 1.25em 125% 15pt 21px 1.3em 130% 16pt 22px 1.4em 140% 17pt 23px 1.45em 145% 18pt 24px 1.5em 150% 20pt 26px 1.6em 160% 22pt 29px 1.8em 180% 24pt 32px 2em 200% 26pt 35px 2.2em 220% 27pt 36px 2.25em 225% 28pt 37px 2.3em 230% 29pt 38px 2.35em 235% 30pt 40px 2.45em 245% 32pt 42px 2.55em 255% 34pt 45px 2.75em 275% 36pt 48px 3em 300%
像素與毫米的轉換 轉換還須要知道另外一個參數:DPI(每英寸多少點) 象素數 / DPI = 英寸數 英寸數 * 25.4 = 毫米數 對於顯示設備,無論是打印機仍是屏幕,都有一種通用的方法 先用GetDeviceCaps(設備句柄,LOGPIXELSX) 或者 GetDeviceCaps(設備句柄,LOGPIXELSY)得到設備每英寸的像素數 分別記爲:px 和 py 一英寸等於25.4mm 那麼毫米換算成像素的公式爲 水平方向的換算: x * px /25.4 垂直方向的換算: y * py /25.4 像素換算爲毫米 x * 25.4 / px 在程序中這麼寫 MyControl.Height := 10{mm} * PixelsPerInch * 10 div 254; 分子和分母同乘以10,將浮點數運算轉化爲整數運算,效率更高 經常使用的1024x768或800x600等標準的分辨率計算出來的dpi是一個常數:96,所以計算出來的毫米與像素的關係也約等於一個常數: 基本上 1毫米 約等於 3.78像素