iOS7 中文字體說明與問題統計 - iOS

By Rachel
at 2014-02-04T15:45
at 2014-02-04T15:45
Table of Contents
iOS7 中文字體說明與問題統計
( 手機排版請見諒 )
前面有點囉唆,且文章有點長,這篇主要是針對中文字體,希望大家能耐心看一下。
===============
怕還是有人不知道,所以寫在最前面:
關於 LINE 字體
LINE 已經可以直接使用你的中文字體,方法如下:
加入軟體源:apt.iphone4.tw
安裝:LINE Chinese Font
( 感謝皮樂的開發 )
===============
在 iOS7 放出 JB 工具以來也一個多月了,中文字體的修改上一直以來遇到不少問題,像是特定 App 閃退、缺字等等,現階段其實已算穩定,只有一小部份特定情況仍無法解決。
我先稍微說明一下一開始到現在的做法調整過程,並且會提出現階段有收到的問題回報。
在 iOS6 時期,中文字體只有兩個檔案:
STHeiti-Light.ttc
STHeiti-Medium.ttc
每個 TTC 字集檔都包含 5 個 TTF 格式字體,當時在改字體的時候,用的工具是 TTF tools、 Font Creator 5.2 版。過程小複雜,簡單地說,要把你想換的字體複製成 5 個,再將他們內部的 Naming 替換成與原生字體一樣的內容,接著包成新的 TTC 檔案就完成了,當時這樣就能製作新字體,只有一小部份的字體需要經過其他調整 ( 高度、寬度、座標等等 )。
到了 iOS7,中文字體又多了兩個檔案:
STHeiti-Thin.ttc
STHeiti-UltraLight.ttc
從名稱可以知道是比 Light 更細的兩個字體重量,也就是為了因應 iOS7 介面風格而新增的,這兩個由於是新增字體,打開後發現和之前一樣,都只包了 5 個 TTF。但是原本的 Light 與 Medium 打開後卻變成各包了 10 個 TTF,這下就頭大了,一來要處理的內容變多,打包、測試也是很費時的。
至於為什麼要變成 10 個 TTF,原因很簡單:並非所有的 App 都已針對 iOS7 做更新調整,舊有的 App 仍需要原本對應的字體內容,所以舊的 5 個 + 新增的 5 個就變成了 10 個 TTF,這也就是為什麼 Light 與 Medium 要變成 10 個 TTF 在內,而 Thin 與 UltraLight 都只包了 5 個 TTF。
一開始當然就依照 iOS6 時期的做法去修改,改完之後開始出現閃退問題,便開始尋找問題點,找出了可能是因為字符的缺少,但之前 iOS6 時期是不會因為這樣閃退的,頂多出現「口口」的狀況,到了 iOS7 也許因為 API 全面的調整,以致部份 App 會自行 Cache 字體內容,導致換了字體後因為不符合原生字體而閃退。
最初的解決方式是補字進去。
原生字體多達 50000 字以上,要補字不是一件容易的事,但是經過一段時間的努力,暫時解決了一部份的問題,但似乎仍然治標不治本。後來與另一位也很熱心研究字體的 Ryan 大,一起對字體的問題經過了很多回合的討論,也感謝 Ryan 大提供的原生字體模版,我們開始將工具換為 TTFname3、Fontlab Studio 來處理,並將字體的修改做法改成「把新字體的字符貼到原生字體中」。
這樣一來有以下的好處:
1. 原生字體不會缺字
2. Naming 不會有問題,用 ttfname3 可以快速修改
舉例來說,假設原生字體有 10 個字,而新字體只有 8 個字,把這 8 個字貼到原生字體對應的 10 個位置內,那剩下的兩個沒貼當然就會保持原生字體,絕對不會有缺字、缺符號的問題。當然要貼之前,新字體的編碼、高度、寬度什麼的都要調整好才能貼,否則仍會有很多問題。
大家也許在想,為什麼網路上找不太到字體編修的教學,其實不是網友們或是我不想寫,而是過程的細節實在太多,加上使用的軟體都是英文介面,絕非三言兩語可以說得明白,要操作起來很快,但是要一個步驟一個步驟去寫大概要花上 5~10 篇文章去詳細說明,以後我看看有沒有這麼多時間再來考慮吧.....
在新作法之下,可以說解決了絕大部份的閃退問題,但目前仍然會收到一小部份的回報,下面我先整理一下現有的已知問題,有列出並不代表你一定會遇到,因為除了機型的差異,你所使用的 App 也不一樣,不一定會遇到相同問題。
1-1. 布卡漫畫剃頭問題
布卡漫畫在 App Store 已下架,之前有備份的人也許有的字體沒有調整到位會出現剃頭,例如 HiraSansGB+儷黑 這個字體,不過後續更新都會盡量解決。
1-2. 微信「朋友圈」閃退
這個 App 在台灣不如大陸這麼火熱,但是因為我的字體也有許多簡體用戶安裝,以致這個問題的浮現,找了很久都無法解決,畢竟不太可能是因為特殊字符,原生字體中並沒有缺少,覺得很有可能是因為微信對於字體的 Cache 問題。有一部份網友回報,移除微信,到 App Store 重新安裝一次就解決了,所以可能確實存在著 Cache 問題。
1-3. Facebook Messenger 訊息隨機漏字 ( 空白 )
換了字體後,在 Facebook Messenger 打字有時候會遇到這情況,有一部份的訊息內容不見了,只看到訊息框框,或是看起來像打字打到一半,後面空白這樣。後來的解決方式也一樣,移除 App,到 App Store 重新安裝一次就解決了,看來仍是因為 Cache。
1-4. 「百度貼吧、QQ 空間」閃退
這個原因與前面都一樣,重新安裝就解決問題了
1-5. Instagram 閃退問題
這個 App 也是奇葩之一,不管怎樣就是會有人遇到閃退,但我就是怎樣也遇不到。收集了一些回報,發現 5S 與 5 都有人遇到,其他裝置不確定。目前的心得仍然很有可能是因為 App 的 Cache 原因,但這個 App 的閃退實在太怪異,現在仍無法完全解決。
以上這五個 App 並不是所有機型、所有字體都會這樣,有時候也得看人品 ( 誤 ),或是你的社群內容而定,像我都沒有遇到閃退.... ( 我大概是最希望遇到閃退的人了吧XDDDD )
1-6. 表情符號「^_^」按鍵閃退
鍵盤上的表情符號鍵 ( 就是「^_^」這個按扭 ),一按下便會閃退,但是這個狀況絕大部份只有出現在 iPhone 5S,我手邊的 iPhone 5 從頭到尾都沒有遇到過,怎麼按都不會閃退....
如果你是在主畫面的搜尋 ( 主畫面下拉 ),原本按「^_^」會閃退的話,在搜尋畫面中去試就會變成 Respring,這原因很簡單,因為主畫面是隨時保持啟動的,沒辦法閃退只好就 Respring 了,所以基本上跟你在其他 App 閃退的情況是同一個原因,並不是因為這個按鈕造成 Respring,而是因為主畫面不能閃退,只能 Respring。
其實表情符號自己輸入也可以,或是從其他地方貼製貼上也行,偏偏就是一部份的 5S 在按下這個按鍵時會閃退,到現在還找不到真正的原因,一直都在苦惱中。
1-7. 部份英文字體「fl」問題
將英文字母 f 與 l ( 小寫的 L ) 打在一起時,fl 會變成原本或較小的字體,總之看起來就會與你新換上的英文字體不同,而將 f 與 l 中間空一格之後就又恢復了。( 我只能說發現這個問題的網友,可能具有塞亞人的雷達眼鏡XDDDD )
這個問題後續我會解決,因為製作工具不同竟然會導致這個莫名奇妙的問題,我在原生英文字體中有看到一個「fl」符號,應該是被自動轉成這個符號去了,後來我試了 Fontlab Studio 製作同樣的字體就沒有這個問題,所以之後會找時間將現有的英文字體重做一次。( 比較後期做的沒有這個問題,例如少女字體的英文、Myuppy 英文等等 )
以上即是現階段比較常遇到的問題,除了上面提到的之外,在 A7 處理器有遇到的閃退問題,Ryan 有提供一個方式可以試試 ( 重刷且不要進 DFU 模式 ),但是因為現在 7.0.5 已出,絕大部份裝置重刷後是無法降回 7.0.4 的,要等 evasi0n 支援 7.0.5 再說。
接下來希望大家在推文提供使用狀況的回報,讓我能統計一下現有的情況,回報的格式請參考下面的說明,因推文長度限制故用簡稱即可。
字體的版本請一律用最新版本,雖然我知道可能舊版你沒有遇到同樣問題,但如果你都用得好好的其實也不用去更新,這邊只統計最新版本的字體問題。
( 1-7 的問題因為之後會重做解決,所以就不用回報了 )
我的軟體源:cydia.hdlulu.com
iOS7 字體專用資料夾:LuLu Font iOS7
這邊以我的軟體源中的字體為主,若你是在 iPhone4TW 安裝的基本上是一樣,但就不是使用 Bytafont 去替換了,這邊建議使用 Bytafont 去換替字體,它會自動清除一些系統 Cache 檔 ( 例如鍵盤外觀、電信商字體 ) 也比較方便。
條件:iOS7.0~7.0.4
( 不用寫出你的版本,因為只限 7.0.4 用戶回報 )
機型:不限
( 以下面簡稱即可 )
4/4S/5/5S、Air/miniR/mini/iPad3
使用字體 ( 以中文為主 )
( 用前面的簡稱即可 )
H:HiraSansGB
H-trad:HiraSansGB 簡轉繁
H+L:HiraSansGB+儷黑
H+L-trad:HiraSansGB+儷黑 簡轉繁
P:POP字體
G:少女字體
C:原生中文 簡轉繁
遇到的問題
如果你看了上面那些列出的已知問題,若你試了移除重裝並沒有解決,就照上面問題前面的題號,例如 1-1、1-2、1-3 這樣列出即可。
推文格式範例:
(1) 完全沒有遇到問題
5/H:沒問題
5S/H+L:沒問題
Air/H+L:沒問題
miniR/H:沒問題
(2) 有同樣問題
5S/H+L:1-5,1-6
5/H+L-trad:1-4,1-6
(3) 有其他問題
5S/H+L:你的問題
謝謝大家了!
--
( 手機排版請見諒 )
前面有點囉唆,且文章有點長,這篇主要是針對中文字體,希望大家能耐心看一下。
===============
怕還是有人不知道,所以寫在最前面:
關於 LINE 字體
LINE 已經可以直接使用你的中文字體,方法如下:
加入軟體源:apt.iphone4.tw
安裝:LINE Chinese Font
( 感謝皮樂的開發 )
===============
在 iOS7 放出 JB 工具以來也一個多月了,中文字體的修改上一直以來遇到不少問題,像是特定 App 閃退、缺字等等,現階段其實已算穩定,只有一小部份特定情況仍無法解決。
我先稍微說明一下一開始到現在的做法調整過程,並且會提出現階段有收到的問題回報。
在 iOS6 時期,中文字體只有兩個檔案:
STHeiti-Light.ttc
STHeiti-Medium.ttc
每個 TTC 字集檔都包含 5 個 TTF 格式字體,當時在改字體的時候,用的工具是 TTF tools、 Font Creator 5.2 版。過程小複雜,簡單地說,要把你想換的字體複製成 5 個,再將他們內部的 Naming 替換成與原生字體一樣的內容,接著包成新的 TTC 檔案就完成了,當時這樣就能製作新字體,只有一小部份的字體需要經過其他調整 ( 高度、寬度、座標等等 )。
到了 iOS7,中文字體又多了兩個檔案:
STHeiti-Thin.ttc
STHeiti-UltraLight.ttc
從名稱可以知道是比 Light 更細的兩個字體重量,也就是為了因應 iOS7 介面風格而新增的,這兩個由於是新增字體,打開後發現和之前一樣,都只包了 5 個 TTF。但是原本的 Light 與 Medium 打開後卻變成各包了 10 個 TTF,這下就頭大了,一來要處理的內容變多,打包、測試也是很費時的。
至於為什麼要變成 10 個 TTF,原因很簡單:並非所有的 App 都已針對 iOS7 做更新調整,舊有的 App 仍需要原本對應的字體內容,所以舊的 5 個 + 新增的 5 個就變成了 10 個 TTF,這也就是為什麼 Light 與 Medium 要變成 10 個 TTF 在內,而 Thin 與 UltraLight 都只包了 5 個 TTF。
一開始當然就依照 iOS6 時期的做法去修改,改完之後開始出現閃退問題,便開始尋找問題點,找出了可能是因為字符的缺少,但之前 iOS6 時期是不會因為這樣閃退的,頂多出現「口口」的狀況,到了 iOS7 也許因為 API 全面的調整,以致部份 App 會自行 Cache 字體內容,導致換了字體後因為不符合原生字體而閃退。
最初的解決方式是補字進去。
原生字體多達 50000 字以上,要補字不是一件容易的事,但是經過一段時間的努力,暫時解決了一部份的問題,但似乎仍然治標不治本。後來與另一位也很熱心研究字體的 Ryan 大,一起對字體的問題經過了很多回合的討論,也感謝 Ryan 大提供的原生字體模版,我們開始將工具換為 TTFname3、Fontlab Studio 來處理,並將字體的修改做法改成「把新字體的字符貼到原生字體中」。
這樣一來有以下的好處:
1. 原生字體不會缺字
2. Naming 不會有問題,用 ttfname3 可以快速修改
舉例來說,假設原生字體有 10 個字,而新字體只有 8 個字,把這 8 個字貼到原生字體對應的 10 個位置內,那剩下的兩個沒貼當然就會保持原生字體,絕對不會有缺字、缺符號的問題。當然要貼之前,新字體的編碼、高度、寬度什麼的都要調整好才能貼,否則仍會有很多問題。
大家也許在想,為什麼網路上找不太到字體編修的教學,其實不是網友們或是我不想寫,而是過程的細節實在太多,加上使用的軟體都是英文介面,絕非三言兩語可以說得明白,要操作起來很快,但是要一個步驟一個步驟去寫大概要花上 5~10 篇文章去詳細說明,以後我看看有沒有這麼多時間再來考慮吧.....
在新作法之下,可以說解決了絕大部份的閃退問題,但目前仍然會收到一小部份的回報,下面我先整理一下現有的已知問題,有列出並不代表你一定會遇到,因為除了機型的差異,你所使用的 App 也不一樣,不一定會遇到相同問題。
1-1. 布卡漫畫剃頭問題
布卡漫畫在 App Store 已下架,之前有備份的人也許有的字體沒有調整到位會出現剃頭,例如 HiraSansGB+儷黑 這個字體,不過後續更新都會盡量解決。
1-2. 微信「朋友圈」閃退
這個 App 在台灣不如大陸這麼火熱,但是因為我的字體也有許多簡體用戶安裝,以致這個問題的浮現,找了很久都無法解決,畢竟不太可能是因為特殊字符,原生字體中並沒有缺少,覺得很有可能是因為微信對於字體的 Cache 問題。有一部份網友回報,移除微信,到 App Store 重新安裝一次就解決了,所以可能確實存在著 Cache 問題。
1-3. Facebook Messenger 訊息隨機漏字 ( 空白 )
換了字體後,在 Facebook Messenger 打字有時候會遇到這情況,有一部份的訊息內容不見了,只看到訊息框框,或是看起來像打字打到一半,後面空白這樣。後來的解決方式也一樣,移除 App,到 App Store 重新安裝一次就解決了,看來仍是因為 Cache。
1-4. 「百度貼吧、QQ 空間」閃退
這個原因與前面都一樣,重新安裝就解決問題了
1-5. Instagram 閃退問題
這個 App 也是奇葩之一,不管怎樣就是會有人遇到閃退,但我就是怎樣也遇不到。收集了一些回報,發現 5S 與 5 都有人遇到,其他裝置不確定。目前的心得仍然很有可能是因為 App 的 Cache 原因,但這個 App 的閃退實在太怪異,現在仍無法完全解決。
以上這五個 App 並不是所有機型、所有字體都會這樣,有時候也得看人品 ( 誤 ),或是你的社群內容而定,像我都沒有遇到閃退.... ( 我大概是最希望遇到閃退的人了吧XDDDD )
1-6. 表情符號「^_^」按鍵閃退
鍵盤上的表情符號鍵 ( 就是「^_^」這個按扭 ),一按下便會閃退,但是這個狀況絕大部份只有出現在 iPhone 5S,我手邊的 iPhone 5 從頭到尾都沒有遇到過,怎麼按都不會閃退....
如果你是在主畫面的搜尋 ( 主畫面下拉 ),原本按「^_^」會閃退的話,在搜尋畫面中去試就會變成 Respring,這原因很簡單,因為主畫面是隨時保持啟動的,沒辦法閃退只好就 Respring 了,所以基本上跟你在其他 App 閃退的情況是同一個原因,並不是因為這個按鈕造成 Respring,而是因為主畫面不能閃退,只能 Respring。
其實表情符號自己輸入也可以,或是從其他地方貼製貼上也行,偏偏就是一部份的 5S 在按下這個按鍵時會閃退,到現在還找不到真正的原因,一直都在苦惱中。
1-7. 部份英文字體「fl」問題
將英文字母 f 與 l ( 小寫的 L ) 打在一起時,fl 會變成原本或較小的字體,總之看起來就會與你新換上的英文字體不同,而將 f 與 l 中間空一格之後就又恢復了。( 我只能說發現這個問題的網友,可能具有塞亞人的雷達眼鏡XDDDD )
這個問題後續我會解決,因為製作工具不同竟然會導致這個莫名奇妙的問題,我在原生英文字體中有看到一個「fl」符號,應該是被自動轉成這個符號去了,後來我試了 Fontlab Studio 製作同樣的字體就沒有這個問題,所以之後會找時間將現有的英文字體重做一次。( 比較後期做的沒有這個問題,例如少女字體的英文、Myuppy 英文等等 )
以上即是現階段比較常遇到的問題,除了上面提到的之外,在 A7 處理器有遇到的閃退問題,Ryan 有提供一個方式可以試試 ( 重刷且不要進 DFU 模式 ),但是因為現在 7.0.5 已出,絕大部份裝置重刷後是無法降回 7.0.4 的,要等 evasi0n 支援 7.0.5 再說。
接下來希望大家在推文提供使用狀況的回報,讓我能統計一下現有的情況,回報的格式請參考下面的說明,因推文長度限制故用簡稱即可。
字體的版本請一律用最新版本,雖然我知道可能舊版你沒有遇到同樣問題,但如果你都用得好好的其實也不用去更新,這邊只統計最新版本的字體問題。
( 1-7 的問題因為之後會重做解決,所以就不用回報了 )
我的軟體源:cydia.hdlulu.com
iOS7 字體專用資料夾:LuLu Font iOS7
這邊以我的軟體源中的字體為主,若你是在 iPhone4TW 安裝的基本上是一樣,但就不是使用 Bytafont 去替換了,這邊建議使用 Bytafont 去換替字體,它會自動清除一些系統 Cache 檔 ( 例如鍵盤外觀、電信商字體 ) 也比較方便。
條件:iOS7.0~7.0.4
( 不用寫出你的版本,因為只限 7.0.4 用戶回報 )
機型:不限
( 以下面簡稱即可 )
4/4S/5/5S、Air/miniR/mini/iPad3
使用字體 ( 以中文為主 )
( 用前面的簡稱即可 )
H:HiraSansGB
H-trad:HiraSansGB 簡轉繁
H+L:HiraSansGB+儷黑
H+L-trad:HiraSansGB+儷黑 簡轉繁
P:POP字體
G:少女字體
C:原生中文 簡轉繁
遇到的問題
如果你看了上面那些列出的已知問題,若你試了移除重裝並沒有解決,就照上面問題前面的題號,例如 1-1、1-2、1-3 這樣列出即可。
推文格式範例:
(1) 完全沒有遇到問題
5/H:沒問題
5S/H+L:沒問題
Air/H+L:沒問題
miniR/H:沒問題
(2) 有同樣問題
5S/H+L:1-5,1-6
5/H+L-trad:1-4,1-6
(3) 有其他問題
5S/H+L:你的問題
謝謝大家了!
--
Tags:
iOS
All Comments

By Cara
at 2014-02-09T09:48
at 2014-02-09T09:48

By Ina
at 2014-02-12T20:41
at 2014-02-12T20:41

By Victoria
at 2014-02-17T06:13
at 2014-02-17T06:13

By Irma
at 2014-02-20T15:19
at 2014-02-20T15:19

By Mia
at 2014-02-23T16:32
at 2014-02-23T16:32

By Michael
at 2014-02-28T05:58
at 2014-02-28T05:58

By Steve
at 2014-03-04T17:13
at 2014-03-04T17:13

By Hedda
at 2014-03-06T00:57
at 2014-03-06T00:57

By Rachel
at 2014-03-09T03:57
at 2014-03-09T03:57

By Andy
at 2014-03-13T17:17
at 2014-03-13T17:17

By David
at 2014-03-18T04:55
at 2014-03-18T04:55

By Michael
at 2014-03-21T20:28
at 2014-03-21T20:28

By Hedda
at 2014-03-23T05:55
at 2014-03-23T05:55

By Regina
at 2014-03-27T13:32
at 2014-03-27T13:32

By Skylar DavisLinda
at 2014-03-29T17:06
at 2014-03-29T17:06

By Robert
at 2014-03-31T03:08
at 2014-03-31T03:08

By Belly
at 2014-04-02T18:37
at 2014-04-02T18:37

By Rebecca
at 2014-04-04T00:48
at 2014-04-04T00:48

By Todd Johnson
at 2014-04-04T08:01
at 2014-04-04T08:01

By Queena
at 2014-04-06T17:30
at 2014-04-06T17:30

By Adele
at 2014-04-08T02:25
at 2014-04-08T02:25
Related Posts
RetinaGuard 藍光保護膜特價

By Kama
at 2014-02-04T15:10
at 2014-02-04T15:10
請問JB後安裝出現在設定的"mouse"是?

By Quanna
at 2014-02-04T15:07
at 2014-02-04T15:07
itune更新項目中的換帳號

By Freda
at 2014-02-04T14:08
at 2014-02-04T14:08
插耳機後?

By Kyle
at 2014-02-04T13:53
at 2014-02-04T13:53
LINE 顯是沒有成員?

By Yedda
at 2014-02-04T13:15
at 2014-02-04T13:15