jensen
发表于 2025-6-27 23:05:31
偷懒的小蜜蜂 发表于 2025-6-27 11:18
部分子集化吗,非常有趣的想法
是的,我觉得全部子集化真不是什么好主意,你把微软雅黑子集化内嵌干什么呢?
newyorker
发表于 2025-6-28 08:13:53
jensen 发表于 2025-6-27 22:55
讲真我设计这东西的时候并没有考虑过批处理,可以看我的使用须知里,我不认为把覆盖大量对白的字体内嵌是 ...
批处理+1
不知道楼主的主要目标用户是哪类人群,至少这论坛的大部分用户是看动画的,一季有12集或者24集,每集用到的字体基本是一样的。即使不内嵌主要对白,只是把oped的特效字幕内嵌,那也得重复操做12或者24次。能够批处理的话会方便不少。
感觉只要是电视剧类的都需要批处理。只有看电影的不需要?
JamHsueh
发表于 2025-6-28 10:44:14
jensen 发表于 2025-6-27 23:02
一个mkv或mks中可能包含多条字幕,当前这个GUI无法满足这样的需求。
我建议你还是把里面的字幕抽出来, ...
你是说,嵌在ASS文件里面的字体?然后mkvmerge会把字体提取出来作为附件吗?如果是的话我还真的没留意过。
我可能误会了你的软件的功能了,它支持编辑和去子集化提取吗?如果把已经子集化的ASS作为输入会怎么样?
我个人比较推崇的是单独的MKS,我说内嵌到MKV只是因为,既然可以做MKS,那涵盖MKV应该也无妨。
我现在是用mkvtool和自写脚本来做子集化工作的。不过如果有好用的GUI工具也不错。
op200
发表于 2025-6-28 10:56:13
本帖最后由 op200 于 2025-6-28 10:59 编辑
jensen 发表于 2025-6-27 22:46
我建议你还是把字体都放在C:\Windows\Fonts文件夹下,系统会自动扫描所有字体并建立缓存,这样软件查找起 ...
我试了下用 golang 读我 Windows/Fonts 下的600多个字体的Name表,直接读文件的,没有调Windows的字体API,单线程也就用了50ms多
paul
发表于 2025-6-28 11:16:02
jensen 发表于 2025-6-27 22:55
讲真我设计这东西的时候并没有考虑过批处理,可以看我的使用须知里,我不认为把覆盖大量对白的字体内嵌是 ...
我不太认同“普通对白真没必要内嵌,它是雅黑还是细黑还是兰亭黑区别真不大”这种话了,不管普通对白是什么字体,都是字幕制作者花了心思,付出了劳动的,它都值得弄下字体,这话多多少少有点不尊重别人的劳动了,就算是微软雅黑,也不是每个平台都有这个字体,难道我就因为字幕有这个字体就每个平台都安装这个字体?部分子集化可以作为特色功能,但如果只有部分子集化,那这个软件不适合我,
还有我觉得我找出字幕中的特效使用的字体→只选择子集化特效的字体,我付出了不小的精力,得到的仅仅是体积小了1m,而且由于普通对白没有字体带来的观影效果还下降,这个付出和带来收益,我认为不值得我这样做。
jensen
发表于 2025-6-28 17:42:39
newyorker 发表于 2025-6-28 08:13
批处理+1
批处理要大概结构,重新设计GUI,基本上是另外一个软件了。
我可以考虑做一个命令行版的,批处理会容易很多。
jensen
发表于 2025-6-28 17:44:36
本帖最后由 jensen 于 2025-6-28 18:20 编辑
JamHsueh 发表于 2025-6-28 10:44
你是说,嵌在ASS文件里面的字体?然后mkvmerge会把字体提取出来作为附件吗?如果是的话我还真的没留意过 ...
什么是“去子集化提取”?
你用这个软件把字体嵌入,它就会自动重新载入,相当于打开一个“已经包含内嵌字体的ASS”了,然后你可以做几件事:
重内嵌,重子集化,删除内嵌字体,提取内嵌字体。
jensen
发表于 2025-6-28 17:46:20
op200 发表于 2025-6-28 10:56
我试了下用 golang 读我 Windows/Fonts 下的600多个字体的Name表,直接读文件的,没有调Windows的字体API ...
你电脑性能比较好,我电脑直接卡住
{:10_1069:}
jensen
发表于 2025-6-28 17:53:23
本帖最后由 jensen 于 2025-6-28 18:26 编辑
paul 发表于 2025-6-28 11:16
我不太认同“普通对白真没必要内嵌,它是雅黑还是细黑还是兰亭黑区别真不大”这种话了,不管普通对白是什 ...
首先你可以选择全部字体都勾上,我只是有个弹窗确认,不会让你的观影体验下降。
另外体积缩小不止1M,每个字体大概是从几十M缩减到几十KB,如果字体多,那就是上百M缩减到100K。
它的意义不只是节省本地硬盘空间,更有用的是跨平台分享,让其他人不用再去找字体。同时,它能让电视机顶盒也能显示字体,机顶盒软件能装字体的不多,如Kodi,但Kodi字体装多了性能会急剧下降,这条路是走不通的,只有内嵌可以解决这个问题。
所以你需要的其实只是批处理,但批处理会带来很多其他问题,如没法对各个字幕的字体引用做分开处理,没法具体选择字体引用匹配的文件,内部已有字体怎么处理,只能无脑全部走默认,最多输出一个报告给你看下结果。所以这个我得考虑一下。
op200
发表于 2025-6-28 18:54:44
jensen 发表于 2025-6-28 17:46
你电脑性能比较好,我电脑直接卡住
你用 fonttools 直接加载字体对象导致的吧?只读Name表的时候直接读文件手动解析速度能快几百倍