| adm | Find | login register |
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
Google 的 Android project 裡頭藏了一套特別為手機平台設計的字型,名稱就是 Droid。這系列的字型包括了 Droid Sans, Droid Sans Mono, Droid Serif,是由 Ascender 這家字型廠商設計的,除了一般的西歐字母,Droid Sans 也包含了中日韓的漢字,支援 big5, gb2312, jis 0208, ksc 5601 等字元組,中文看起來是類似黑體風格的,這裡有樣本可以看,完整新聞稿在此。 此字型目前我還沒看到哪裡有提供正式下載的鏈結,目前網路上流傳的,應該是從 Android SDK 中抽出來的,我是在這裡找到的,這篇有提到要怎麼把字型抽出來,不過有點簡略,有興趣的可以試試,我是看不太懂啦。
edited: 1
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
以下是他的授權:
而且字型名本身就是商標(google 所有)。所以,還是謹慎使用為妙。:p
ps. license 資料,擷自字型本身。
edited: 1
| |||||||||||
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
可是新聞稿中說 “The Android platform is a complete mobile phone software stack that will be made available under the Apache open source license." 可能是尚未正式釋出,暫不調整授權?還是 Ascender Corp. 說一套作一套?這就不得而知了。 除了字型本身外,Android 對亞洲文字使用 DigiType Compact Asian 技術也值得一提,這個技術是 Ascender 與威鋒數位合作開發的,據說可以降低使用亞洲文字字型所需的記憶體,然而又可以維持字型一定的可讀性,在效能、字數、與美觀之間找到一個平衡點。Mobile01 上有 PDA 的玩家有分享一些心得。 順便一提,根據 Wikipedia 上的情報,RedHat 的 Liberation Font 也是 Droid Font 的設計者 Steve Matteson 所設計的。 edited: 1
| |||||||||||
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
如果在 Windows 使用這套字型,最好用 GDI++ 加持一下會比較好看。
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
不清楚,我是從這裡下載的: http://damieng.com/blog/2007/11/14/droid-font-family-courtesy-of-google-ascender http://download.damieng.com/fonts/redistributed/DroidFamily.zip
我沒有找到 DigiType Compact Asian 相關規格書的說明,據 http://www.ascendercorp.com/digitypecompactasian.html 這裡的說明,他是沒有公開的 proprietary techniques,也就是說,這不僅僅是字型本身的問題,相對的 driver 本身也是要支援才行。據我所知,目前在 FS/OSS 的 FreeType2 是完全不支援這樣的 render 。 在我們的的螢幕解度沒有進一步突破前,恐怕要由軟體來改進螢幕上字的清晰度會要很努力吧?
另外,這個字型是依大陸新字體的寫法,也就是說會有字形上差異。雖然以最近的情勢發展來看,這些差異會愈來愈被模糊,不過,還是要提醒一下,學校(尤其是中小學)是不適合使用此類字型的(包括文鼎 PL 字型)。
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
DroidSansFallback.ttf 不分是否漢字的話,約有四 萬三千多字,才 3MB 的大小,不簡單。 我看了一下他的造字方式,大量使用 reference 的方式。這可能是使體積縮小的重要原因之一? 不過,這樣一來,以後要加字的時候,可能會比較麻煩,因為一堆小部件佔據了位置,要移動這些部件的位置相當麻煩,所有利用到這個部件的字都會受影響。
顯示的話,我在 X 下測試是效果不錯,當然沒有他們網站上所介紹的那麼神啦!主要是黑體字一般而言,在螢幕上 stroke 會比較顯著。
| |||||||||||
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
嗯,這麼看來這個技術可能是他們的重要賺頭之一~
哦,原本沒注意到,現在仔細看一下,才發覺差好多! 參照你上面提供的表,Droid 的確許多字的外型都是採對岸寫法 比較困擾的例子,如「過骼亟以拔解」 但在一些簡繁體差異較大的字,又會堅守繁體寫法 結果就是有點亂 ,虧威鋒還是台灣公司耶~ 感謝提醒! | |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
非也,非也,華康被日本人買走後才改名為威鋒數位的。:p
| |||||||||||
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
謝謝報馬 Ver 1.0 Build 106 / Ver 1.0 Build 107 檔案大小 (Bytes) 字型檔名
148484 / 150804 DroidSans-Bold.ttf
edited: 1
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
license 還是完全一樣,沒有更動。但可以確定的是這是五人以下電腦 free use 的字型。
| |||||||||||
guest |
3022632 DroidSansFallback.ttf 這個檔在 Windows 下會出現「不是正確的字型檔案」的錯誤訊息 不知道是不是檔案有問題? 我解開後的 DroidSansFallback.ttf md5sum: 21c2bad9a3edef4ae21540f73729df37
coolcd | |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
因為他已經由 platform=3 specific=1 MS Unicode 修改成了 platform=3 specific=10 MS UCS4,這樣才能包括 Unicode 非 BMP 的字。
可能你使用的 Windows 系統尚未支援此一字型編碼(或要另外設定)?X Window System 下是沒有問題。
| |||||||||||
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
hmm... 沒找到字型支援的相關資料,不過我想系統中有其他支援 CJK-ExtB 的字型,並沒有出現同樣的警告,不知道那些字型是不是 platform=3 specific=10 MS ucs4 編碼, 還要再查一下。
另外,看到有趣的東西,做個紀錄。
edited: 2
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
因為一般的大字型會兩種字型編碼並列,而不是單獨使用 UCS4。不過,我不熟悉 Windows 系統,所以,只是在猜測他不支援,並不肯定是 Windows 的問題。當然 Droid 字型是有一些 bugs,不過,由於字型 license 不明確,所以,就在此打住了……,我已經透露不少了。:p
ps. 除非是自由字型,不然我是不幫忙除錯的。 :)
| |||||||||||
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
哈哈,瞭解!還是謝謝前面的指點! | |||||||||||
ychao joined: 2007-10-25 posted: 298 promoted: 21 bookmarked: 3 |
挖舊聞 根據 Rex 在他的 blog 上提到的,Droid font 已經確定是 Apache 2.0 了。 http://people.debian.org.tw/~chihchun/2008/12/31/free-as-speech-font-droid/ 另請教 LJG 兄,應該要怎麼改 platform=3 specific=xxx 的設定啊?小弟想自己動手... | |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
更正一下(我是從官網下載的): http://code.google.com/intl/zh-TW/android/download_list.html 這個 1.0 r2 的版本裡頭,fallback sans 的部份確定已把舊的 license 內容移走(但其中有少數,例如 mono 的字型,舊 license 資訊尚未移走)。 所以,就 license 已改正的字型,已是自由字型。license 書面資訊在 zip 解開後的 tools/lib/fonts/default 目錄的 fonts.xml 檔中。 更改最簡單的方式就是用 fontforge 開啟後,Encoding 選 Unicode full 的那個,然後重新產生字型,fontforge 會自動加入其他必要的 cmap table 資訊。 BTW,重存時要改個名字,不然會覆蓋原來的字型。重新製作出來的字型要再由 fontforge 打開,看是不是有正確的作出來(encoding 應該是要 Unicode full 才對)。也可以用 showttf 去檢查,這個工具要 cvs 的 fontforge 才會有,不想抓 cvs 可以到 cle 去下載 showttf.c.gz: ftp://cle.linux.org.tw/tex/cjk/fonts/tools/
解開後 make showttf 就行了。
ps. 由於他是用 reference 造字的,有人想改的話(not me),可以比一般字型較方便的把大陸寫法改成台灣寫法。
edited: 3
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
以下是轉存後的字型:
edt1023@zenwalk:~/tmp$ showttf DroidSansFallback3.ttf |grep -m1 -A5 Encoding
| |||||||||||
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
我亂搞一通後,現在可以正確安裝了 不過,出來的結果跟上面貼的有點不同,不知道是不是我在 cygwin 用 fontforge 的關係
用 showttf 顯示的資訊看起來, DroidSansFallback 在處理前與處理後差異蠻大的,處理後的字型,多了許多 tables 與 table 的內容、glyph XXXX -> U+XXXX 的資訊與順序都變了。處理前 2951.79KB,處理後 3478.86KB,我猜有些東西可能是原字型為了省空間而故意刪的。 edited: 1
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
你那個 table 有問題,表示轉存失敗(UCS4 不見了!),請由這個字型再轉存(不是用原來的字型,而且再次確定 Encoding 是 Unicode fuill)。你的 fontforge 版本是?
edt1023@zenwalk:~$ fontforge --version
我轉存的結果也差不多,這樣應該是還可以接受。
-rw-rw-rw- 1 edt1023 users 3022632 2009-01-01 13:59 DroidSansFallback.ttf glyph 的次序會變,但一般而言應該沒差,現在靠 glyph 次序找字取字的軟體應該是很少了。
edited: 2
| |||||||||||
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
之前使用的 fontforge 版本是 fontforge 20080720 (libfontforge 20080720),但我將版本昇級為 20081224 後,產生的字型還是有問題,所以可能是我操作 fontforge 的步驟有錯。 我是用 fontforge 打開 DroidSansFallback.ttf 後,檢查 Encoding 選單中 Reencoding 選單內的 Unicode (Full) 有沒有打勾,因為原本就已經是 Unicode(Full) 了,所以我就直接到 File 選單執行 "Generate font" ,按下去後,fontforge 會先檢查 (validate) 字型 ,檢查完畢後,fontforge 會回報說發現字型有錯誤 (Self Intersecting 與 Missing Points at Extrema),詢問要 Review 或 Save,如我選 Save 並改檔名儲存,就得到一個可安裝、但 Encoding 表格已無 UCS4 的字型。 不知以上我的操作步驟是否有問題?感覺好像應該改用加入 Encoding 的型式,而不是 Reencoding,但不知該怎麼做。
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
我在前面的 post 已經說了,要用轉出後的字型再轉存。 就是說 A 字型轉存成 B 字型,再開啟 B 字型再選 Unicode full 轉存成 C 字型,這個 C 字型才是你要的。用 force encoding。
| |||||||||||
coolcd joined: 2008-01-21 posted: 2601 promoted: 348 bookmarked: 95 |
喔!原來如此。處理完第一次後,打開第一次轉存的字型,編碼變成 unicode(BMP),必需再次指定 unicode(Full) 才可產生正確的、Encoding Table 有 MS UCS4 的字型。 這次看起來應該 ok 了,感恩哦! edited: 1
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
附帶說明。這不是 fontforge 的 bug(我怕有人會去 bug report),這是 fontforge 的 feature。因為該字型在非 bmp 的區域並沒有 glyph(超出 Unicode 範圍的不算在內,就是那些部件 strokes),所以 fontforge 會自行判斷成 Uniocde BMP 字型,而將 cmap table 修正為符合事實。 第二次載入的是 Unicode BMP 字型,我們將他 encoding 成 Unicode full,表示我們將要加字在非 BMP 區,所以 fontforge 會讓你把 UCS4 cmap table 給加上去。
ps. validate 無需去理會,除非你能解讀裡頭的內容,否則很容易誤判將字型弄壞,一般使用可以把這個檢查項目關掉。
| |||||||||||
本人已不在此站活動 joined: 2007-09-19 posted: 4946 promoted: 325 bookmarked: 206 歸隱山林 |
如果要求原字型的部件 strokes 要維持在原位置(這對想修改字型的人會有用),請使用以下的字型(字型名稱後面多 個 t): http://edt1023.sayya.org/fonts/DroidSansFallbackt.ttf.bz2
有許多字只要修改部件的 strokes 就可以了。另外,這個字型 windows 系統也可以安裝。
| |||||||||||
caleb joined: 2007-09-22 posted: 630 promoted: 134 bookmarked: 90 |
放在 git 的,無版權問題的 Droid Font Family: http://android.git.kernel.org/?p=platform/frameworks/base.git;a=tree;f=data/fonts;hb=HEAD 點選想要的字型右邊那個 raw 即可下載。 以 CJK 為例,要下載 DroidSansFallback.ttf 我之前從 Android SDK 拿出來的就下架了(當時還沒改 Apache license) edited: 3
| |||||||||||
caleb joined: 2007-09-22 posted: 630 promoted: 134 bookmarked: 90 |
文泉驿修改的 Droid 增補版已經有全部 GBK 漢字, 搭配原版 Droid font 效果不錯。 建議主要還是用原來的 Droid,遇有缺字再用文泉驿會比較好。 文泉驿首頁:http://wenq.org/ |
| adm | Find | login register |