下面开始介绍SSA字幕的特效代码:
因为这些特效代码执行了一定的功能,暂且就称之为函数吧。
函数的格式有以下这两种:
{\函数名称(参数1,参数2,......)}
{\函数名称 参数1 参数2.....}
下面我们跟随几个例子,来了解一下SSA的特效
例1:
Dialogue: 0,0:00:15.01,0:00:21.56,opjp,,0000,0000,0000,,{\pos(10,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}不{\r}
Dialogue: 0,0:00:15.21,0:00:21.56,opjp,,0000,0000,0000,,{\pos(30,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}机{\r}
Dialogue: 0,0:00:15.41,0:00:21.56,opjp,,0000,0000,0000,,{\pos(50,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}嫌{\r}
Dialogue: 0,0:00:15.61,0:00:21.56,opjp,,0000,0000,0000,,{\pos(70,25)}{\t(0,100,\blur10\fs36)}{\t(100,900,\blur10\fs18)}な{\r}
Dialogue: 0,0:00:17.41,0:00:21.56,opjp,,0000,0000,0000,,{\pos(90,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}天{\r}
Dialogue: 0,0:00:17.61,0:00:21.56,opjp,,0000,0000,0000,,{\pos(110,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}気{\r}
Dialogue: 0,0:00:17.81,0:00:21.56,opjp,,0000,0000,0000,,{\pos(130,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}模{\r}
Dialogue: 0,0:00:18.01,0:00:21.56,opjp,,0000,0000,0000,,{\pos(150,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}様{\r}
Dialogue: 0,0:00:18.21,0:00:21.56,opjp,,0000,0000,0000,,{\pos(170,25)}{\t(0,100,\blur10\fs36)}{\t(100,800,\blur10\fs18)}が{\r}
Dialogue: 0,0:00:19.21,0:00:21.56,opjp,,0000,0000,0000,,{\pos(190,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}乗{\r}
Dialogue: 0,0:00:19.41,0:00:21.56,opjp,,0000,0000,0000,,{\pos(210,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}り{\r}
Dialogue: 0,0:00:19.61,0:00:21.56,opjp,,0000,0000,0000,,{\pos(230,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}移{\r}
Dialogue: 0,0:00:19.81,0:00:21.56,opjp,,0000,0000,0000,,{\pos(250,25)}{\t(0,100,\blur10\fs36)}{\t(100,400,\blur10\fs18)}っ{\r}
Dialogue: 0,0:00:20.21,0:00:21.56,opjp,,0000,0000,0000,,{\pos(270,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}て{\r}
Dialogue: 0,0:00:20.41,0:00:21.56,opjp,,0000,0000,0000,,{\pos(290,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}た{\r}
Dialogue: 0,0:00:20.61,0:00:21.56,opjp,,0000,0000,0000,,{\pos(310,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}ア{\r}
Dialogue: 0,0:00:20.81,0:00:21.56,opjp,,0000,0000,0000,,{\pos(330,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}イ{\r}
Dialogue: 0,0:00:21.01,0:00:21.56,opjp,,0000,0000,0000,,{\pos(350,25)}{\t(0,100,\blur10\fs36)}{\t(100,200,\blur10\fs18)}ツ{\r}
Dialogue: 0,0:00:15.01,0:00:21.56,opcn,,0000,0000,0000,,{\blur20\fad(100,100)}{\move(10,350,630,350,0,300)}被坏天气所影响的那家伙
截图:

影片16秒
从上面的编码信息,我们可以看出16s时,应该显示的字幕为:
{\pos(70,25)}{\t(0,100,\blur10\fs36)}{\t(100,900,\blur10\fs18)}な{\r}
我们可以分解出:
{\pos(70,25)}
{\t(0,100,\blur10\fs36)}
{\t(100,90,\blur10\fs18)}
{\r}
这几个函数
下面我们来逐一的解释一下这些函数的作用。
1、{\pos(x,y)}
这个函数的作用就是定位字幕显示的位置。
里面的两个参数依次是视频的X坐标、Y坐标。
在最前面的脚本信息,我们定义了视频的尺寸,这个定位也是以脚部尺寸为参照定位的。
X、Y的坐标可以超过脚本的定义范围。
注意:对于一整行字幕,进行定位时,还要参考字幕的显示方式。
例如:


上图字幕显示定位都(424,450)
第一张是居中显示字幕:定位坐标在整个字幕中间。
第二张是左对齐显示:定位坐标在整个字幕左边。
其他显示方式依次类推。
有些时候,字幕显示定位觉得计算坐标比较复杂
也有简易定位的方法:
例如将{\pos(x,y)}换成{\a1}
字幕效果将变成这样:
{\a1}

{\a2}

{\a3}

屏幕字幕显示位置可以有9种。
下面给出{\a<n>},不同的数值显示的方式:
SSA字幕:
5 6 7
9 10 1
1 2 3
ASS字幕:
7 8 9
4 5 6
1 2 3
对于不同播放器识别的数字效果可能不同,同时SSA编码、ASS编码识别效果也是不同的。
一般1、2、3这三个基本是通用的。其他的代码只能看播放器的兼容性了。