2023年12月18日发(作者:)
SRT字幕字体大小&特效修改初探
写此文希望能对只能用SRT字幕(且手机PDA不能用SSA或SUB字幕)的朋友有帮助
[不要问如何手机智能影 院如何转把SRT转成*.SUB 网上有一堆教你如何提取*.son的文章本文只考虑SRT字幕的处理!!!]
平时我们用 MediaCoder手机电影转换3GP只支持SRT字幕(别人因这个 原因才问这个技术
问题的,这句话的对与错不在本文分析范畴),
但当SRT字幕太小时该怎么处理呢?
但当SRT字幕太小时该怎么处理呢?如何改字体大小和特效呢?!!!
SRT比SSA要难处理多了,SRT是没有Style行的好烦人 ,~所以呢~试着去想了一下
在这里先说局部处理方 法 [下面的代码参考了一下网友的BLOG]
<备注:一般的SRT字幕 只有下边两项>
00:00:00,000 --> 00:00:07,970 (备注:这是时间轴)
おはようございます=早上好 (备注:这是字幕)
<备注:而我们则为它加上一行来实现改变字体大小>
00:00:00,000 --> 00:00:07,970 (备注:这是时间轴)
{¥3c&Hd22c01&}{¥fn黑体¥fs27} (备注:这是改变字体、颜色、大小的参数)
おはようございます=早上好 (备注:这是字幕)
3c的3为字体边框粗、1 为细。
fs27的27为字体的大小。
fn后为用何字体。
c255&为字体颜色。
结论如果认为字 幕字太小可以在时间轴和字幕之间挺插入如下参数(这个参数是可修改的)
{2c&Hd22c125&}{fn楷体 fs26}
---------------------------- 分隔线,上文是前言-----------
但我们总不能一个个Ctrl+c Ctrl+v吧,一部动画有好几百条字幕-0-
所 以我们要用到正则公式,来批量处理文本,以下我介绍一下方法
|---------------------------- 分隔线,上文是引言---------------
|最新发现BUG,本方法只对SSA转成SRT或精确到10毫秒的SRT的字幕文件适用,精确到1毫秒的转换方|法要多加一个步骤,步骤FIRST追加
|-----------------------步骤FIRST追 加---------分隔线------------------------
|如果你的字幕是精确到1毫秒(而不是10毫秒)的,[若你的字幕文件是精确到10毫秒的,请路
过这步骤]会|出现BUG,
|
|
|------------见下几行----------
|00:00:15,501 --> 00:00:30,501
|我是字幕
|我是第二行字幕
|
|
|--------------- 我们可以看到其时间轴末端是*,501 即精确到1毫秒
|用 我说的方法会出现问题~所以多作一步处理
|修 正办法如下
|我们用PopSUB 软件打开SRT文件,另存为另一个SRT文件之后会发现,字幕被精确到10毫秒了,可以用|本页介绍的方法了:效果如下
|
|
|00:00:15,500 --> 00:00:30,500
|我是字幕 我是第二行字幕
|-----------------------步骤FIRST追加---------分隔线 ----------------------------
|
|
下面是公式的使用方法
|___________________________________________
以下是使用公式前的准备工作
◇请确保你用的是SRT字幕,如果是SSA字幕可下
载 一个只Popsub的软件,打开文件另存为SRT格式字幕
◇用正则表达式前确保已经安装了.Net Framework 2.0 [见下下载地],然后下载Regex
Tester [见下下载地]。第一个是微软插件必须的,第二个是文本替换用的软 件
/downloads/?displaylang=zh-cn&FamilyID=0856eacb-4362-4b0d-8edd-aab15c5e04f5
/deerchao/downloads/
---------我是分隔线 -----------
使用方法如下
☆第一部
运行 后,先选菜单Commands-> 再选Replace
☆第二部,
把SRT字 幕文件以记事本打开[双击之再选择记事本再点确定],把所有字符复制到本软件soucre栏中
再在Regex栏填 (备注:不得含空格回车TAB等!!!)
0n
再在Replace栏中填
0
{3c&Hd22c01&}{fn黑体fs27}
{2c&HFFFFFF&}{fn楷体fs20}
{2c&HFFB871&}{fn楷体fs20}
再加一个回车(即空一行)
▲之后按键盘上的 F5 之后Matches栏会生成一大串字符
☆第三部,
第三部是有用的,不能省略~~虽然图片看上去没什么不同,但不能省略
把第二部最 下方一栏即Matches栏中生成的的内容复制到soucre栏
再在Regex栏填下面的公式|{备 注}下行结尾是冒号还有不要不小心按了回车导致出现空行
{3c&Hd22c01&}{fn黑体fs27}n00:
{2c&HFFFFFF&}{fn楷体fs20}n00:
{2c&HFFB871&}{fn楷体fs20}n00:
再在 Replace栏中填下字符 |{备注}下行结尾是冒号
00:
▲之后按键盘上的 F5
☆第四部,把重新生成的Matches栏中的新内容复制到你刚才以文本文档打开的记事本页面
-->保存-->新字幕完成
--------------------- 分隔线,--------
------------------------下面这行可看可不看 -----------------
正则公式更详细的教程 (即/deerchao/#getstarted)
======================================
有人问,所以 呢,花了些时间去想~之后写出了此文
由于对正则表达式的理解不太深以及对辅助软件的见识太少了,所以只想到了这个方法.也不算太复杂 吧,
srt字幕的确是比较令人讨厌,不用正则表达式比较难批量处理,相信这个方法在对字幕要求局限性较大的PDA 手机ORMP4会有一定的用处~本人较少发技术文章~所以呢~若有更简便的方法欢迎提出 ^_^
文by doraemon


发布评论