字幕空隙填充
或者粘贴字幕文本
选项
允许在上一条字幕结束和下一段开始之间出现的黑屏毫秒数。空档是从目前为止到达的最远结束时间量起的,而不是紧邻的前一条,所以一条长字幕压在几条短字幕下面时,不会凭空算出一段屏幕上从未出现过的空隙。这个数字起什么作用取决于你所在的页面:补空隙页面会合上比它宽的空隙(0 是常见值,表示两端正好相接),而检查页会列出所有比它宽的区间并保持文件不动。无论哪种,小于或等于这个值的都保持原样。
两条字幕之间的空白有两端:前一条的结束和后一条的开始。结束 移动前一条的结束时间,所以合上空隙会把那条字幕变长,拉开空隙会把它变短;后一条字幕的时间连毫秒都不变。开始 则移动后一条的开始时间,前一条不动。选你更信任的那一端 —— 通常是台词最后被说出的那条,因为字幕不该在话还没听到之前就出现。
时间按哪个帧率计算。在格式页面里,这是 MicroDVD 需要的值,因为它把时间存成帧号。在帧率页面里,它是文件当初对应的速率 —— 字幕是按这个版本做的 —— 而页面的第二个框填你要拿它配套的视频速率。常见的有 23.976、24、25、29.97、30、50、59.94 和 60。填错会让整条时间轴偏移;在帧率页面里,偏移是按比例发生的,而不是一个固定的量。
这一页把两条字幕之间的空屏补上:办法是让前一条在屏幕上多停一会。填入你愿意保留的最大空隙,所有更宽的空隙都会被收到正好这个值——前一条的结束时间向后移,后一条完全不动,两条文字各自保留。上限填 0(这也是默认值)表示两条正好相接:一条接一条,中间没有黑帧。
值得说清楚它不是什么。把两条字幕合成一条是另一页,产物也不同:这里两行仍然是两条字幕,各自的样式、位置、卡拉 OK 计时都在,时间轴预览上是两条现在相接的条,而不是一条长条。如果两行本是一句话的两半、你希望它们被当作一句来读,去合并;如果它们是两件不同的事、只是中间有停顿,就把前一条多留一会。
移动哪一端由你选择,而且总是成功:两条字幕总能被摆成首尾相接,所以输入框里的数字一定被精确达到,前一条停在后一条开始的地方,绝不会越过去。End(默认)拉长前一条;Start 改为把后一条的开始提前,前一条原样不动。后一条本来写晚了——那句应当在前一句消失的瞬间出现——就该用 Start。
与全站一致,文件在浏览器标签页里读写,不上传任何内容:SRT、WebVTT、ASS、SSA、SBV、SAMI、MicroDVD、TTML、JSON、CSV 都接受,内容没有变化的文件逐字节原样返回。
示例
两处空隙,全部填平
输入
1
00:00:01,000 --> 00:00:02,000
First line.
2
00:00:06,000 --> 00:00:07,000
Second line.
3
00:00:07,420 --> 00:00:08,000
Third line.
输出
1
00:00:01,000 --> 00:00:06,000
First line.
2
00:00:06,000 --> 00:00:07,420
Second line.
3
00:00:07,420 --> 00:00:08,000
Third line.
上限为 0,两处空隙都完全闭合:第一行在屏幕上从 1 秒变成 5 秒,第二条从 1000 毫秒变成 1420 毫秒。第三条完全没动,文件里仍然是三条字幕——文字没有被合并。两次改变的都是空隙左侧的那条字幕。
正好等于上限的空隙,和超出一毫秒的空隙
输入
1
00:00:01,000 --> 00:00:02,000
First.
2
00:00:02,200 --> 00:00:03,000
Second.
3
00:00:03,201 --> 00:00:04,000
Third.
输出
1
00:00:01,000 --> 00:00:02,000
First.
2
00:00:02,200 --> 00:00:03,001
Second.
3
00:00:03,201 --> 00:00:04,000
Third.
上限设为 200 时,正好 200 的空隙符合要求、保持原样;201 的空隙被缩到正好 200,第二条的结束时间比原来晚一毫秒。两者被区别对待是有意的:正好等于你的数字说明已经满足要求,若把它当成待办,上限低一毫秒就会改动文件里的每一处空隙。
常见问题
填平空隙会把两条字幕合并成一条吗?
不会,这正是它与“相邻字幕条合并”的区别。这里两句话仍是两条字幕,各自保留文字、样式、位置和逐字计时,文件字幕条数不变。合并会产出一条从第一行开始到第二行结束、两段文字拼在一起的字幕,丢掉第二条的样式并改变条数。
空隙上限填 0 到底会发生什么?
每条字幕都正好在下一条开始处结束,字幕连续播放,中间没有黑帧。对一份手工剪过或从别的工具转来的文件,这通常是第一次运行该做的事;时间轴预览上,一排分离的条会变成不间断的一串。0 在这里是真实请求,不是空输入框:它表示“空隙最多为零”,所有大于零的空隙都必须满足。
字幕空隙填充时该动前一条还是后一条?
取决于你选的边。End(默认)把前一条的结束时间向后移,后一条的时间精确到毫秒不变,前一条只是在屏幕上待得更久;Start 把后一条的开始时间提前,前一条不动。没有同时移动两端的设置,因为那会改变这一对在时间轴上的位置,而不只是它们之间的空白。
填充空隙会不会让字幕互相重叠?
不会。一对字幕里只有一条边在动,而且停在后一条的边界上,所以填平空隙只能让两条靠近,永远不会穿过彼此。如果前一条的结束本来就晚于后一条的开始,那份文件有的是重叠而不是空隙,继续拉长只会更糟,应该先去做重叠消除。
上限设得比某些空隙还大时会怎样?
那些空隙会被拉到正好等于上限,而不是保持原样:请求是“没有比这更宽的空隙”,所以每个超过该值的空隙都被压到该值,文件第一条字幕可能因此增长很多。上限设得极大时什么都不会发生,因为没有空隙比它更宽——这是对一份还没看过空隙的文件最安全的第一次运行。
填充空隙后每条字幕的样式还在吗?
完全保留。这一页从不动文字、也从不合并字幕条,斜体行仍是斜体,ASS 字幕保留样式、位置和图层,WebVTT 字幕保留区域或对齐方式。改变的只是每处空隙左侧那条字幕的结束时间,或者在选 Start 时它的开始时间。