请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册
楼主: yzwduck

FontLoaderSub: 加载ass/ssa字幕所需字体的小工具 (r7-20200525)

该用户从未签到

2

主题

86

帖子

0

VC币

荣誉会员

Rank: 14Rank: 14Rank: 14Rank: 14

积分
100348
yzwduck  楼主| 发表于 2020-10-11 07:16:42 | 显示全部楼层
本帖最后由 yzwduck 于 2020-10-11 07:20 编辑
bipy 发表于 2020-10-10 22:28
楼主你好,FontLoaderSub 非常棒,已经成为了我看番的必备工具。

提一个小需求:

DB 文件理论上是可以手工修改的,主体格式是 UTF-16LE 编码的文本,不过需要注意下面两个地方:1、换行符是 \0\n,在 UTF-16LE 下由 4 个字节构成;
2、开头有 16 字节的二进制文件头,它由下面 4 个 uint32_t 小端数据构成:
magic: 当前是 fldd,不要修改;
num_files: 字体文件的数量;
num_face: 字体名称的数量;
size: 数据库文件本身的大小;

可以把需要新增的字体先单独创建一个数据库/缓存,然后手工 append(跳过前 16 字节)到原有的数据库里,最后更新文件头。这个文件里的数据没有索引、去重,这些步骤是每次读入该文件后再执行的。

我不打算实现手工往数据库添加字体的功能,追加字体的比较合理的做法,大概是通过修改时间+大小来检测文件是否有修改。
要实现这个功能,需要大幅修改扫描的流程,所以我计划在下一个大版本里再实现。

下一个版本会从 0 开始重构,如果一切顺利的话,在过年时会有雏形(只是 Python 脚本,但以后会有 Windows 原生程序)。


回复 支持 反对

使用道具 举报

  • TA的每日心情
    郁闷
    2020-10-16 09:35
  • 签到天数: 10 天

    [LV.3]偶尔看看II

    0

    主题

    16

    帖子

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    6731
    bipy 发表于 2020-10-11 10:33:55 | 显示全部楼层
    本帖最后由 bipy 于 2020-10-11 10:35 编辑

    了解了,辛苦
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-2-18 11:55
  • 签到天数: 20 天

    [LV.4]偶尔看看III

    1

    主题

    6

    帖子

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    2392
    NarseGC 发表于 2020-11-18 13:56:09 | 显示全部楼层
    yzwduck 发表于 2020-6-25 13:21
    因为这字体里保存名称的编码不是 unicode,目前不支持解析非 unicode 的信息,所以就不能识别了。
    ...

    请问大大遇到这种字体名称编码非Unicode的,有什么推荐的处理办法么?

    我仔细看了下超级字体整合包,有不少标题都是乱码的(例如文鼎繁体的字体),安装可以用但FLS识别不到。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2

    主题

    86

    帖子

    0

    VC币

    荣誉会员

    Rank: 14Rank: 14Rank: 14Rank: 14

    积分
    100348
    yzwduck  楼主| 发表于 2020-11-19 07:46:08 | 显示全部楼层
    NarseGC 发表于 2020-11-18 13:56
    请问大大遇到这种字体名称编码非Unicode的,有什么推荐的处理办法么?

    我仔细看了下超级字体整合包,有 ...

    目前的 FLS 只支持 Unicode 编码的字体名称,所以暂时没有好的处理方法。前段时间我试着去解析这些乱码字体名字,但是发现不少字体本身就没有按照规范来编码信息,试了两种方法的效果都不完美。

    在下一个版本的 FLS 里(如果有的话),我打算用 DirectWrite 来解析字体里的名称信息,这样就应该能兼容文鼎繁体系列的字体。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2019-2-18 11:55
  • 签到天数: 20 天

    [LV.4]偶尔看看III

    1

    主题

    6

    帖子

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    2392
    NarseGC 发表于 2020-11-19 15:33:31 | 显示全部楼层
    yzwduck 发表于 2020-11-19 07:46
    目前的 FLS 只支持 Unicode 编码的字体名称,所以暂时没有好的处理方法。前段时间我试着去解析这些乱码字 ...

    期待大佬更新,在此之前手动拖FontLoader将就吧


    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2021-1-20 22:40
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    0

    主题

    3

    帖子

    0

    VC币

    中级会员

    Rank: 3Rank: 3

    积分
    2368
    yuhua18 发表于 2021-1-3 23:23:39 | 显示全部楼层
    bipy 发表于 2020-10-10 22:28
    楼主你好,FontLoaderSub 非常棒,已经成为了我看番的必备工具。

    提一个小需求:

    把字体文件夹放固态盘就好了,我之前放机械盘也很慢,然后整理硬盘时发现字体文件放到固态后,读取瞬间就完成了
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

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