2019-6-19 9:18:54 星期三php
思源字體是一套開源的字體, 那字體寬度是多少呢?函數
測試場景, 將包含漢字, 數字, 大小寫字符的一段文字寫到圖片中去, 但不能出現超出的狀況, 這就要計算出每種字符在不一樣字體下的寬度了工具
測試工具: php GD擴展, 思源字體 (注意 思源字體是otf後綴, 意思是 open tty字體, 能夠用PHP的 imagettftext() 函數將文字寫入到圖片中去)測試
測試結果圖:字體
右邊的寬度是800px,spa
使用的字體是SourceHanSansSC-Light.otf, frontsize=10, 圖片
1. 漢字: 總共61.5個漢字, 計算下來, 每一個漢字大約13px, frontSize=1時表明1.3pxget
2. 數字: 總共114個數字, 計算下來, 每一個數字大約7.01px, frontSize=1時表明0.7px擴展
3. 大寫英文字母: 總共97.5個字符, 計算下來, 每一個字符大約8.2px, frontSize=1時表明0.82pxim
4. 小寫英文字母: 總共118個字符, 計算下來, 每一個字符大約6.78px, frontSize=1時表明0.68px
使用的字體是SourceHanSansSC-Light.otf, frontsize=20,
1. 漢字: 總共29.5個漢字, 計算下來, 每一個漢字大約27.12px, frontSize=1時表明1.36px
2. 數字: 總共57個數字, 計算下來, 每一個數字大約14.03px, frontSize=1時表明0.7px
3. 大寫英文字母: 總共49.5個字符, 計算下來, 每一個字符大約16.16px, frontSize=1時表明0.8px
4. 小寫英文字母: 總共59個字符, 計算下來, 每一個字符大約13.56px, frontSize=1時表明0.68px
總結:
漢字: frontSize=1時表明1.36px
數字: frontSize=1時表明0.7px
大寫英文字母: frontSize=1時表明0.8px
小寫英文字母:frontSize=1時表明0.68px