PHP計算思源字體寬度, 並把文字繪製到圖片上

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

相關文章
相關標籤/搜索