跳到主要内容
SubtitleMatrix

字幕行数限制

文本样式重排换行
或者粘贴字幕文本

选项

一个框,五个选项,每个选项都有自己的页面。重排 会把每条字幕重新按列宽折行,既能把过长的行缩短,也可能把短行合并上来。只拆长行 只处理超过列数的行,其余原样保留。均衡 保持每条字幕原有的行数,只在行之间挪动词,让最长的那一行尽可能短。合并 把每条字幕并成一行。限制 对已经在行数上限内的字幕不做任何改动。这一页会把框填成标题里点名的选项,并且不列出其他选项。

一条字幕允许有多高。常用值是两行。已经在行数上限内的字幕不做改动;永远不会为了凑数删文本,所以实在压不进上限的字幕会被报告出来,而不是被缩短。

时间按哪个帧率计算。在格式页面里,这是 MicroDVD 需要的值,因为它把时间存成帧号。在帧率页面里,它是文件当初对应的速率 —— 字幕是按这个版本做的 —— 而页面的第二个框填你要拿它配套的视频速率。常见的有 23.976、24、25、29.97、30、50、59.94 和 60。填错会让整条时间轴偏移;在帧率页面里,偏移是按比例发生的,而不是一个固定的量。

这一页限制一条 cue 最多占几行。给它一个数字,超过的 cue 被压到那个行数,词流进更少、更长的行里;本来就在限制之内的 cue 原样通过,不被重写。默认是 2,也是常用值,因为多数播放器和多数台内规范要求一次最多显示两行。

这里的约束是行数而不是行宽。页面没有列数框,因为根本没有列数限制在起作用:词被塞进允许的行数里,每行需要多长就多长。这正是它与“按行长重排”的区别:行宽对而某条 cue 摊成三四行时用这一页;行数对而太宽时用重排那一页。

为了达到行数,页面从不删字,这是其余规则的支点。所有阻挡只是行数时(三行普通台词能塞进两行),cue 就被压下来;塞不进时,cue 保留在超限状态并被计数,你拿到的是一个“还有多少条超限”的数字,而不是一份悄悄少了半句话的文件。

有一种塞不动的情况很常见,值得点名:以破折号开头的行标记说话人切换,这些行彼此隔开,两条合并等于把两个人的台词放进一行。三个说话人、限制两行的 cue 因此仍保留三行,并计入超限。11 种允许 cue 内多行的格式可用(SRT、WebVTT、ASS、SSA、SBV、SAMI、LRC、MicroDVD、TTML、JSON、CSV),纯文本除外;文件不上传。

示例

三行压成两行

输入

1
00:00:01,000 --> 00:00:04,000
We could take the train
and be there by six
before the shops shut

2
00:00:05,000 --> 00:00:08,000
Already two lines
that fit fine

输出

1
00:00:01,000 --> 00:00:04,000
We could take the train and be
there by six before the shops shut

2
00:00:05,000 --> 00:00:08,000
Already two lines
that fit fine

第一条 cue 从三行变成两行,重排成 30 与 34 列——比原来更长的行,因为约束是行数、宽度是自由的。一个词都没有去掉:同样十一个词、同样顺序。第二条本来就在限制内,所以完全没被重写。

再也压不下去的一条 cue

输入

1
00:00:01,000 --> 00:00:04,000
- Then we walk
- All the way home
- And up the hill

输出

1
00:00:01,000 --> 00:00:04,000
- Then we walk
- All the way home
- And up the hill

三行对两行的限制,三行全部保留。每行都以破折号开头,标记换人说话,这样的块不能与下一块合并而不把两个人的话放进一行。宽度从来不是问题(14、18、17 列),要压到两行只能混说话人,于是它超限并被计数。

常见问题

限制每行字幕行数和按行长重排有什么区别?

一个固定行数、让宽度浮动,一个固定宽度、让行数浮动。这一页取最大行数并把词塞进去,所以压得越紧行越长;重排取列数并生成需要的行数。两个限制都超的 cue 需要你决定哪个对你的播放器更重要。

压不到限制行数时会怎样?

保留超限,并报告有多少条这样的 cue,而不是删字凑数。常见原因是说话人破折号,那些行不能互相合并。另一种做法是删词直到塞得下,而一个为了满足数字而悄悄缩短台词的工具,比一个如实报告更糟。

已经是两行的字幕为什么完全没动?

因为两行就在限制两行之内。这个数是上限而不是目标:已经满足的 cue 重排只会冒着挪动有意为之的换行的风险,所以逐字节通过。也正因为如此,整份文件只有几条超高时,跑这一页是安全的。

三条破折号台词为什么保留在超限状态?

因为每条破折号行都是不同的人在说话,页面不会把其中两条并进一行。三个说话人、两行限制,没有既塞得下又不混人的排法,于是保持三行并计入超限。真要并成一行,用去换行那一页,它会报告合并了多少处说话人切换。

限制行数会删掉字幕里的文字吗?

不会。词只在行间移动,从不删除,三行变两行的 cue 还是原来那些词、原来的顺序。唯一会消失的是本来就空的空行,因为空行不带词,留着会在重排后变成双倍空隙。

哪些格式可以限制行数?

cue 能容纳多行的 11 种:SRT、WebVTT、ASS、SSA、SBV、SAMI、LRC、MicroDVD、TTML、JSON、CSV。纯文本每条 cue 就是一行,限制两行永远不会改变任何东西,所以不提供。

相关工具