字體制作方法一
我們需要使用一個小工具“ttftinker”,這個工具可以把ttf字體文件按照各個屬性(map、name等)分解為不同的文件,因此只需要在分解後把原字體的“name”屬性替換目標字體的“name”屬性,然後重新打包為ttf字體即可。這樣做的好處是:
1、 可以做出做大限度符合原字體屬性的中文字體文件。
2、 不會出錯。
3、 方便。
4、 可以去除不必要的屬性(比如bitmap data等),最大限度的減小字體文件的體積,節約內存空間。
需要的工具:
perl 下載 ttftinker-2.90下載
操作方法:
1、 安裝perl。
2、 解壓ttftinker-2.90(用winrar即可解壓),我是把解壓後的文件放在c:\ttftinker
3、 把原字體及自己需要的字體拷貝至c:\ttftinker,比如我想將把STHeiti.ttf 改為方正姚體(FZYTK.ttf),那就是把這兩個字體都拷入c:\ttftinker
4、 點擊“開始”-“運行”,輸入cmd,回車,打開dos命令行窗口
5、 依次執行以下命令:
cd c:\ttftinker
set path=%path%; C:\ttftinker
set perllib=C:\ttftinker
perl ttfunpack fzytk.ttf fzytk (unpack目標字體)
perl ttfunpack STHeiti.ttf STHeiti (unpack原始字體)
copy /y STHeiti\name fzytk (替換目標字體的name屬性)
cd fzytk
perl ..\ttfpack 0x00010000 name prep glyf cmap hmtx post loca maxp head hhea OS_s2 > STHeiti.ttf (重新打包字體)
下圖是我原來轉換fzytk.ttf 到Reader的字體tt0011m_.ttf
字體制作方法二
1、安裝perl
2、解壓ttftinker-2.90至c:\ttftinker
3、拷貝元字體及目標字體至c:\ttftinker
4、在notepad裡粘貼以下腳本:
setlocal enabledelayedexpansion
set newttf=msyh.ttf
set originttf=tt0011m_.ttf
set path=%path%; c:\ttftinker
set perllib=C:\ttftinker
md tmp
perl ttfunpack %originttf% tmp\originttf
perl ttfunpack %newttf% tmp\newttf
copy /y tmp\originttf\name tmp\newttf
pushd tmp\newttf
perl ..\..\ttfpack 0x00010000 name prep glyf cmap hmtx post loca maxp head hhea OS_s2 > ..\%originttf%
popd
pushd tmp
for /f %%i in ('dir /ad /b') do rmdir /s /q %%i
popd
然後另存至c:\ttftinker\mknewttf.bat
5、雙擊運行此批處理文件,即可在c:\ttftinker裡生成一個tmp文件夾,裡面就有改好的字體。
字體制作方法三
需要工具:
FontCreator5.6下載地址
用FontCreator改字體的Naming,然後另存為你想要的字體,具體方法見下。但以前用這個方法改字體的時候出現過問題,大家還是酌情選擇吧。
更改字體的Naming:
1、先記錄原字體的Naming信息:
用FontCreator打開想要更改的字體,再Format菜單內選Naming,記錄裡面的信息,注意每個Platform裡面的信息都要記錄無誤。
注意每個Platform裡面的信息最好都記下來。
2、更改目標字體的Naming信息為原字體的信息。如果Platform框裡沒有相應的字符(很多Microsoft的字體都沒有Macintosh的字體信息,iphone裡的蘋果字體也沒有Microsoft的信息,所以iphone裡的字體下載後不能像xp系統裡的字體那樣雙擊進行預覽),需要在Format菜單裡的Platform選項裡進行添加。
如果有多余的Platform,那也在Format>Platform裡刪除掉,其實不刪也可以,不過刪除後可以減少字體的大小。
3、改好後另存為新的字體(文件名不要弄錯哦),然後替換到iphone裡相應的目錄即可。
很簡單的方法吧,但這個方法有一點不好的是一旦不小心改錯一個字母,可能會有不可預料的後果哦(只要仔細點就行,但的確有人發生過)。