因為最近比較常看動畫,但每一套字幕用到的字型都不同
有時字型包裡又有缺漏,或是有些字型壓根就沒用到

於是自己寫了個小程式來判斷字幕檔裡到底用了哪些字型
(C# .NetFramework 4.5.2 環境)


主要功能

  1. 列出.ass/.ssa字幕檔裡實際用到的字型,並以紅黑顏色來表示未安裝(紅/粉紅) 及已安裝字型(黑/藍)
  2. 列出系統裡已安裝的所有字型,包含英文/繁中/簡中/日文字型名
  3. 可選擇是否自動存成文字檔 (勾選右下 Save .txt)
  4. 可選擇是否導出字型文件 (勾選下方 Save Fonts)
  5. 按F12/Menu鍵可導出 debug 用的純文字文件,方便報錯/除錯
  6. 在繁中OS下,將可能缺字的字幕部分,另外生成 .NeedVerify.ass,方便字幕作者檢視

操作方式

  1. 可直接拖曳字幕檔案或目錄到其上,或用 Select 按鈕選目錄、或手動輸入目錄 enter 皆可
  2. 點 Installed Fonts 鈕,則列出系統已安裝字型
  3. fonts.txt 會存於字幕目錄下,installedFonts.txt 則存於程式本身目錄下,若有勾選 Save Fonts,則會存到 字幕\Fonts\目錄下
  4. 字型會存到字幕目錄\Fonts\ 下,不管複製成功或失敗,結果都會顯示於字型後面,如最上面的圖  copied 代表字型複製成功,not installed 代表系統未安裝此字幕,not found 代表在註冊表裡或系統字型文件夾裡找不到此字型

截圖說明

截圖是以俺妹字幕為例,列出俺妹一二季全字幕檔實際用到的字型

目前除了黑色跟紅色,另外用藍色跟粉紅色來顯示特殊字型

黑色 - 已安裝字型
藍色 - 已安裝的特殊字型

紅色 - 未安裝字型
粉紅 - 未安裝的特殊字型

特殊字型的定義是,在 .ass/.ssa 裡正常定義也正常安裝,卻可能仍然沒有正常顯示出來的字型
發生的原因未知,如果有人知道原理,也請告知一下

例如

  1. 日文字型 FOT-マティス Pro B (FOT-Matisse Pro B)
     在使用直式字型 @FOT-マティス Pro B 時,無法正常顯示,改成 @FOT-Matisse Pro B 則正常
  2. 華康中圓體(P) (DFPYuanMedium-B5)
     在使用 \fn華康中圓體(P) 時,無法正常顯示,改成 \fnDFPYuanMedium-B5 則正常
  3. Noto 字型 (Google) + Style 行設定了錯誤的 encoding 時,如繁中 Windowns + 134(GB2313) 或簡中 Windows + 136(BIG5)
  4. Source Hans/思源 字型 (Adobe) 跟 Noto 是一模一樣的字型 (只有字型名稱不同)
     思源黑體(Source Han Sans) = Noto Sans,思源宋體(Source Han Serif) = Noto Serif

用特別的顏色來提醒使用者,這些字型可能要修改 .ass/.ssa 檔後才能正常顯示 (1/2/3),或是避免重覆安裝 (4)


更新日誌

v180623

  1. 支援 騰祥、"BONX"、"Comic Runes" 字型
  2. 支援更多 "FOT", "A-OTF", "G-OTF" 字型
  3. 修正一些 "NeedVerify.ass" 遇到直式字幕的問題
  4. 修正 Win10 更新之後多了一些空行的問題

下载


来源:http://bbs.vcb-s.com/thread-1894-1-1.html