找回密码
 立即注册
楼主: tonyhsie

ListAssFonts: 小工具,分析字幕使用的字型 (2023/06/13 更新)

  • TA的每日心情

    18 小时前
  • 签到天数: 1005 天

    [LV.10]以坛为家III

    125

    主题

    1088

    回帖

    1万

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    1050392

    崭露头角活跃达人坚持不懈财富猎人日积月累灌水之王

    蓥荥 发表于 2024-2-4 02:48:41 | 显示全部楼层
    不知道是我的问题,还是bug
    安装了方正宋三_GBK 5.31版本,字幕使用FZSongIII-Z05的名字,软件显示未安装

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    如有字幕无法下载,请联系我补档,失效原因
    除非增加特效或改成多种样式,否则请不要将.srt转成.ass,具体原因
    若蓝奏云失效,请先尝试将域名中的lanzous中的s换成b、e、f、h、i、j、l、m、o、p、q、t、u、v、w、x、y。
    请注意繁化或简化时,除了要对内容进行繁化或简化,也可能需要对字体进行更换。
    请不要发表“感谢楼主”、“谢谢分享”等无意义的回复,如需表达对发布者的感谢请尽量使用评分功能。
    压制组个人偏好:VCB-Studio > mawen1250 > LoliHouse > Beatrice-Raws = Moozzi2 = AI-Raws > ReinForce = IrizaRaws > LowPower-Raws > jsum > 日职(等号表示谁出的早就收谁的;jsum虽好,但是个人更喜欢留公版)
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2016-12-31 01:33
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    69

    主题

    1326

    回帖

    1万

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    2854365

    卓越贡献

    tonyhsie  楼主| 发表于 2024-2-4 06:42:11 | 显示全部楼层
    蓥荥 发表于 2024-2-4 02:48
    不知道是我的问题,还是bug
    安装了方正宋三_GBK 5.31版本,字幕使用FZSongIII-Z05的名字,软件显示未安装 ...

    我這裡無法復現,系統上安裝的方正宋三_GBK,跟你的附檔是一樣的檔案,僅檔名不同 (FZS3K.ttf)



    可能還是要由你那邊自行除錯了

    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有账号?立即注册

    x
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    18 小时前
  • 签到天数: 1005 天

    [LV.10]以坛为家III

    125

    主题

    1088

    回帖

    1万

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    1050392

    崭露头角活跃达人坚持不懈财富猎人日积月累灌水之王

    蓥荥 发表于 2024-2-4 15:13:55 | 显示全部楼层
    本帖最后由 蓥荥 于 2024-2-4 15:35 编辑
    tonyhsie 发表于 2024-2-4 06:42
    我這裡無法復現,系統上安裝的方正宋三_GBK,跟你的附檔是一樣的檔案,僅檔名不同 (FZS3K.ttf)

    发现了问题所在,部分方正宋三_GBK的字体名字是“FZSong III-Z05”,多了个空格,所以显示未安装,超级字体整合包 XZ中就同时存在这两种字体。
    如有字幕无法下载,请联系我补档,失效原因
    除非增加特效或改成多种样式,否则请不要将.srt转成.ass,具体原因
    若蓝奏云失效,请先尝试将域名中的lanzous中的s换成b、e、f、h、i、j、l、m、o、p、q、t、u、v、w、x、y。
    请注意繁化或简化时,除了要对内容进行繁化或简化,也可能需要对字体进行更换。
    请不要发表“感谢楼主”、“谢谢分享”等无意义的回复,如需表达对发布者的感谢请尽量使用评分功能。
    压制组个人偏好:VCB-Studio > mawen1250 > LoliHouse > Beatrice-Raws = Moozzi2 = AI-Raws > ReinForce = IrizaRaws > LowPower-Raws > jsum > 日职(等号表示谁出的早就收谁的;jsum虽好,但是个人更喜欢留公版)
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    前天 12:13
  • 签到天数: 33 天

    [LV.5]常住居民I

    1

    主题

    6

    回帖

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    11376
    ssh_0224 发表于 2024-3-20 14:07:51 | 显示全部楼层
    本帖最后由 ssh_0224 于 2024-3-20 14:33 编辑

    我有个想新增的功能,能不能顺便导出每种字体所用的字符的集合(即使照着原样copy下来不去掉重复的字符也可以)?这样方便用pyftsubset取字体子集,字体文件压缩效率也更高一点。
    还发现一个影响不是很大的bug,用fontcreator改变字体文件内部的字体名后,之前匹配不上的字体文件理论上确实应该匹配上了,但是估计是因为软件使用字体缓存的缘故,同路径、同文件名的、经过字体软件编辑修改后的字体文件依旧匹配不上,我这边修改了字体文件的文件名(“xxx.ttf”)之后就匹配上了。如果可以的话,希望能完善一下缓存机制,加个字体文件CRC校验什么的,或者提供缓存清除的选项。

    使用的是当前软件的最新版(v230613)

    点评

    另一种方法就是,你把需要的字体复制到另外一个没缓存过的目录,这样就会重新建一次那个路径的缓存  发表于 2024-3-20 18:13
    这种你应该手动删掉缓存,不然每次运行都跑一次CRC很不实际  发表于 2024-3-20 18:10
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2016-12-31 01:33
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    69

    主题

    1326

    回帖

    1万

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    2854365

    卓越贡献

    tonyhsie  楼主| 发表于 2024-3-21 04:21:21 | 显示全部楼层
    ssh_0224 发表于 2024-3-20 14:07
    我有个想新增的功能,能不能顺便导出每种字体所用的字符的集合(即使照着原样copy下来不去掉重复的字符也可 ...


    第一個新功能你可以研究一下 ttx (afdko 裡的一個工具)
    它可以導出字型裡的所有 characters,變成 .xml 形式

    https://github.com/adobe-type-tools/afdko

    https://github.com/fonttools/fonttools


    第二個問題,就像推文所說的,如果每次在 ListAssFonts 執行時,都要檢查所有外部字型檔案的 CRC
    這是非常浪費時間而且沒實際效益的行為
    (其實不用說 CRC,光是檢查幾萬個字型檔案的時間戳記,都一樣會浪費很多時間)

    我的建議是,你修改的新字型,不要再沿用舊字型的檔名,另外改個檔名就好了
    例如 xxx.ttf => xxx.20240321.ttf 之類的

    至於要刪除外部字型的緩存,只要刪掉這個目錄 %USERPROFILE%\AppData\Local\ListAssFonts\ext 就可以了
    但我覺得另存新檔是最快最方便的做法


    題外話,字幕匹配不上字型,改字幕就好了,為什麼要改字型?
    回复 支持 1 反对 0

    使用道具 举报

  • TA的每日心情
    慵懒
    前天 12:13
  • 签到天数: 33 天

    [LV.5]常住居民I

    1

    主题

    6

    回帖

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    11376
    ssh_0224 发表于 2024-3-21 10:11:04 | 显示全部楼层
    本帖最后由 ssh_0224 于 2024-3-21 10:50 编辑
    tonyhsie 发表于 2024-3-21 04:21
    第一個新功能你可以研究一下 ttx (afdko 裡的一個工具)
    它可以導出字型裡的所有 characters,變成 .xml  ...
    感觉第一个问题理解错了?我是指把ass文件里要显示的文字,按照ass调用的字体种类,每种字体实际被调用到的(也就是需要显示出来的)字符集对应一个.txt输出,
    比如“方正准圆.txt”里面的内容:”ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789、。?!:「」『』【】字集合……“这样的(每种字体大概几百个到上千个字符不等),
    之后就能根据这些和字体种类一一对应的字符集,用pyftsubset,对每种字体的字型文件(”xxx.ttf“)精准地取对应的字体子集,这样内封mkv就能极大减少附加的字体文件的大小了。
    我感觉大佬给的方案是把一个完整字型文件(”xxx.ttf“)里所有的字型(大概几十万个)都转换为字符输出,呃,对我似乎没什么用吧


    不过还是感谢大佬回复,第二个问题我想应该没问题了

    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    郁闷
    2016-12-31 01:33
  • 签到天数: 6 天

    [LV.2]偶尔看看I

    69

    主题

    1326

    回帖

    1万

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    2854365

    卓越贡献

    tonyhsie  楼主| 发表于 2024-3-21 11:28:32 | 显示全部楼层
    本帖最后由 tonyhsie 于 2024-3-21 13:48 编辑
    ssh_0224 发表于 2024-3-21 10:11
    感觉第一个问题理解错了?我是指把ass文件里要显示的文字,按照ass调用的字体种类,每种字体实际被调用到的 ...


    的確,由 ListAssFonts 的角度,我不太能理解為什麼會提出跟子集化相關的需求

    現在已經有很多現成的工具,可以幫你從字幕跟字型裡萃取出字型的子集
    應該會比使用 LAF+pyftsubset 更方便吧


    如:
    https://github.com/tastysugar/AssFontSubset
    https://bbs.acgrip.com/forum.php?mod=viewthread&tid=9070

    github 上還有其它子集化工具,我自己是沒在用,也不知道它們的差異

    但我想
    如果有需要客制化的話,或許你可以拿它們現有的源碼來修改,會比較省事



    回复 支持 1 反对 0

    使用道具 举报

  • TA的每日心情
    慵懒
    前天 12:13
  • 签到天数: 33 天

    [LV.5]常住居民I

    1

    主题

    6

    回帖

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    11376
    ssh_0224 发表于 2024-3-21 19:05:53 | 显示全部楼层
    tonyhsie 发表于 2024-3-21 11:28
    的確,由 ListAssFonts 的角度,我不太能理解為什麼會提出跟子集化相關的需求

    現在已經有很多現成的工具 ...

    OK,感谢~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    18 小时前
  • 签到天数: 1329 天

    [LV.10]以坛为家III

    18

    主题

    415

    回帖

    186

    VC币

    星辰大海

    Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

    积分
    313736
    AnoHana1949 发表于 2024-4-15 12:03:12 | 显示全部楼层
    本帖最后由 AnoHana1949 于 2024-4-15 12:07 编辑

    搞错地方了
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    快速回复 返回顶部 返回列表