在推上fo了個toefl單詞機器人,沒想到很多單詞的音標顯示成了小方塊,那就是android默認的英文字體對某些英語國際音標不支持了,當然我的Galaxy S刷了第三方ROM的,不過從網上的帖子來看,官方的字體存在一樣的問題,總而言之是字體的問題了。也搜了一些帖子,但沒有很好的解決方案,默認的英文字體還是挺美觀的,只是某些英語音標的編碼位上缺失了相應的字符而已,Anroid使用Java作為默認 開發環境,那默認的字體也應該是使用UNICODE UCS編碼的,事實證明的卻如此。那就很簡單了,強大的字體編輯工具FontForge派上用場了。Ubuntu倉庫里面的版本太低了,可以使用GetDeb倉庫來安裝最新版本的FontForge。用FontForge打開Android默認的英文字體DroidSans.ttf,果然國際音標編碼區域空空如也,英語音標現實不完全也就一點兒也不奇怪了。從國際音標wiki上查找到了這寫符號的UNICODE編碼,從DejaVuSerif.ttf和Gothic.ttf這兩個字體里面提取了對應的字形(glyph)插入到DroidSans.ttf相應的BMP(Basic Multilingual Plane)編碼位上。當然只補充了英語音標會用到的字符,包括ɑ,?,?,?,?,?,?,?,?,?,?,?,?,?這幾個常用音標字符。默認的字體竟然連重音(primary stress)和次重音(Secondary stress)這兩個符號都沒有,一并補齊了。將制作好的字體覆蓋Android默認英文字體/system/fonts/DroidSans.ttf,當然需要root權限,再看英語音標,顯示的相當完美了,google dictionary里面的音標也完全沒有問題。 ...展開收縮
本站僅提供存儲服務,所有內容均由用戶發布,如發現有害或侵權內容,請
點擊舉報。