首頁  >  文章  >  ass是什麼文件的格式

ass是什麼文件的格式

青灯夜游
青灯夜游原創
2023-02-22 18:05:1919340瀏覽

ass是字幕檔的格式。 ASS全名為「Advanced SubStation Alpha」是一種高級的字幕格式,是基於SSA 4.00 編碼構建的,在SSA編寫風格的基礎上增添更多的特效和指令;該格式字幕的外掛文件以“*.ass”作為後綴。 ASS字幕是純文字文件,這意味著它可以用任意文字編輯器手動編輯。

ass是什麼文件的格式

本教學操作環境:windows7系統、Dell G3電腦。

ASS 是大多數字幕製作者所公認的並且經常使用的字幕格式。

SubStation Alpha(Sub Station Alpha),簡稱SSA,是由CS Low(亦稱為Kotus)創建,比傳統字幕格式(如SRT)功能更加先進的字幕文件格式。此格式字幕的外掛檔案以*.ssa作為後綴。

Advanced SubStation Alpha(ASS)是一種比SSA更高級的字幕格式, 其實質版本是SSA v4.00 。它是基於SSA 4.00 編碼構建的。 ASS的主要變化就是在SSA編寫風格的基礎上增添更多的特效和指令。此格式字幕的外掛檔案以*.ass作為後綴。

目前有許多播放器支援渲染SSA、ASS字幕。

ASS是可以相容SSA格式的。

ass是什麼文件的格式

1、SSA/ASS基本結構

SSA/ASS字幕是純文字文件,這表示它們可以任意文字編輯器手動編輯,但必須要注意:解析器假定此腳本是遵循SSA標準中所定義的規則,在解析時任何錯誤都可能會導致無法預料的結果。

SSA/ASS腳本被劃分為類別ini檔案風格的多個section。但它並不是標準的ini檔案。
此腳本最多包含五個section:[Script Info][v4 Styles][Events][Fonts][Graphics]

  • [Script Info]必須是整個檔案的第一行。
  • 現在的SSA檔案已經很少包含[Fonts][Graphics]這兩個部分了。
    因為這些功能只由Sub Station Alpha這一個程式所支持,而其它的filter (Vobsub/Vsfilter/Avery Lee Subtitler filter) 都不支援。
  • 每個section中的大多數行都以某些說明性文字開頭,稱為“行描述符(line descriptor)”,以冒號結束。
  • 行類型(line type)主要包括:
    • 分號開頭的註解行;
    • Format:格式行;
    • [Script Info]部分中的15個行型別;
    • [v4 Styles]部分的樣式行;
    • ##[Events]部分的6個行類型。 (行類型將在後續的每部分單獨介紹)。
  • 每一行中的資訊欄位用逗號分隔,所以角色名稱([Events]部分)和樣式名稱([v4 Styles]部分)中不能含有逗號。
  • 行是不可分割。
  • 腳本中的每個條目都包含了一行中所有的信息,不能被分成多行。
  • 格式不正確的行會被忽略。
  • [Events]部分的事件順序可以打亂輸入,仍可被正確播放,我們不能假定每個對話行都依照時間順序排列在腳本檔案中。
  • 如果在腳本中使用了未知的樣式,那麼就會使用*Default樣式 。
  • 如果樣式指定了未安裝的字體,那麼就會使用
  • Arial/宋體
以下是SSA/ASS檔案中五個主要部分的簡要總結:

[Script Info]

這部分包含了腳本的頭部和總體資訊. [Script Info] 必須是 v4 版本腳本的第一行。

[v4 Styles]

這一部分包含了所有樣式的定義。每一個被腳本使用的樣式都應該在這裡定義。 ASS 使用 [v4 Styles]。

[Events]

這一部分包含了所有腳本的事件,有字幕、註解、圖片、聲音、影像和指令。基本上,所有在螢幕上看到的內容都在這一部分。

[Fonts]

這一部分包含了腳本中內嵌字體的資訊。

[Graphics]

這一部分包含了腳本中內嵌圖片的資訊。

2、[Script Info]部分

一個典型的[Script Info]部分是這樣的:

[Script Info]
; This is a Sub Station Alpha v4 script.
; For Sub Station Alpha info and downloads,
; go to http://www.eswat.demon.co.uk/
Title: Neon Genesis Evangelion - Episode 26 (neutral Spanish)
Original Script: RoRo
Script Updated By: version 2.8.01
ScriptType: v4.00
Collisions: Normal
PlayResY: 600
PlayDepth: 0
Timer: 100,0000
此部分定義了多個行類型,其對應意義如下:

腳本行 備註
#; 分號,後面可以跟任何內容。只在腳本中用作註解。載入腳本時不可見。分號必須是該行的第一個字元。舊版中使用!:註解
Title 標題,對腳本的描述。如果未指定,自動設定為untitled
Original Script 最初建立腳本的作者。如果未指定,自動設定為unknown
Original Translation (可選)最初翻譯對話的人。如果未指定,則該項目不顯示
Original Editing (可選)最初腳本的編輯者,通常是對翻譯潤飾和校對的人。如果未指定,則該項目不顯示
Original Timing (可選)最初的時間軸人員。如果未指定,該項目不顯示
Synch Point (可選)指明何時腳本應該開始播放。如果未指定,該項目不顯示
Script Updated By (可選)對原始腳本進行更新的其他字幕團體的人。如果未指定,該項目不顯示
Update Details #(可選)其他字幕團體對原始腳本更新的細節。如果未指定,則該項目不顯示
ScriptType SSA 腳本格式的版本。例如 V4.00。如果目前使用的 SSA 程式版本舊於腳本的版本,將給予警告
Collisions 為了防止字幕重疊,它決定了字幕如何移動。
如果設定為Normal,SSA 會嘗試使用「Margins」指定的位置來定位字幕。同時,字幕會垂直地移動來防止重疊。在Normal的防重疊模式下,新字幕會出現在已存在字幕的上方,但它會尋找最低的不產生重疊的位置,來填補其他字幕產生的「空隙」。
如果設定為Reverse,已存在的字幕會移上新字幕以騰出空間。這意味著這字幕總是可以自上向下地閱讀,但也意味著已存在的字幕可能會在新字幕出現之前出現在螢幕的中間。它會佔用大量的螢幕區域。
PlayResY 渲染字幕時的渲染範圍的高度。如果使用Directdraw播放,SSA v4會自動選擇最接近的已啟用的設定
#PlayResX #渲染字幕時的渲染範圍的寬度。如果使用Directdraw播放,SSA v4會自動選擇最接近的已啟用的設定
#PlayDepth #渲染字幕時的色彩深度。如果使用 Directdraw播放,SSA v4會自動選擇最接近的已啟用的設定
Timer 腳本的計時器速度,使用浮點的百分比。例如,100.0000代表100%,保留四位小數。
計時器速度是應用於SSA時鐘的時間乘數,以提供斜坡時間來擴展或壓縮腳本的總時間。速度大於100%會減少腳本總時間,意味著字幕會逐步地越來越早地出現;速度小於100%會增加腳本總時間,這意味著字幕會逐步地越來越晚地出現(就像一個正的斜坡時間)。
擴充和壓縮只發生在腳本播放時,這個值不會改變腳本事件部分的實際時間。
WrapStyle 定義了預設的換行方式。
0:智慧換行,分割比較均勻,上面的行較長。
1:從行尾的字換行,只有\N能強制換行。
2:不換行,\n和\N強制換行。
3:和0一樣智慧換行,下面的行較長。
ScaledBorderAndShadow 指定邊框寬度與陰影深度是否隨著視訊解析度等比例縮放,預設為No。
當值為No 時,邊框寬度與陰影深度完全按照指定的像素數顯示;當值為Yes 時,邊框寬度與陰影深度隨著實際視訊的解析度同等比例縮放。

在实际应用中可能用到的是Title、PlayResX、PlayResY、WrapStyle等。

3、[v4 Styles]部分

这一部分包含了所有样式的定义。每一个被脚本使用的样式都应该在这里定义。区别于SSA,ASS 使用[v4+ Styles]关键字。
典型的字段如下:

[V4 Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, TertiaryColour, BackColour, Bold, Italic, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, AlphaLevel, Encoding
Style: DefaultVCD, Arial,28,11861244,11861244,11861244,-2147483640,-1,0,1,1,2,2,30,30,30,0,0

这一部分用来定义字幕的外观和位置,以便[Events]部分直接引用。此部分由格式行(Format:)和样式行(Style:)组成。除边框样式外,所有样式都可以在[Events]部分使用代码重设。

格式行和样式行的内容一一对应。格式行定义了如何解释样式中的每个字段,因此格式行必须出现在所有的样式之前,且格式行中列出的字段名必须拼写正确!格式行允许在未来将新字段添加到脚本格式中,并且允许旧版本的软件读取它所识别的字段——即使字段顺序已经更改。包括如下23个字段:

Name, Fontname, Fontsize, PrimaryColour, SecondaryColour, OutlineColour, BackColour, Bold, Italic, Underline, StrikeOut, ScaleX, ScaleY, Spacing, Angle, BorderStyle, Outline, Shadow, Alignment, MarginL, MarginR, MarginV, Encoding

各字段含义如下:

格式名 备注
Name 样式名称(用于[Events]部分引用,区分大小写,不能包含逗号)
Fontname 字体名称( Windows所使用的字体名称,区分大小写)
Fontsize 字体大小(字号)
PrimaryColour 主体颜色(一般情况下文字的颜色)
SecondaryColour 次要颜色(在卡拉OK效果中字幕由次要颜色变为主体颜色)
OutlineColor 边框颜色
BackColour 阴影颜色
Bold 粗体(-1=开启,0=关闭)
Italic 斜体(-1=开启,0=关闭)
Underline 下划线( -1=开启,0=关闭)
Strikeout 删除线( -1=开启,0=关闭)
ScaleX 横向缩放(单位%,100即正常宽度)
ScaleY 纵向缩放(单位%,100即正常高度)
Spacing 字间距(单位像素,支持小数)
Angle 旋转角度(绕z轴逆时针旋转\frz,负数=顺时针旋转。单位,支持小数)
BorderStyle 边框样式(1=边框+阴影,3=不透明底框)
Outline 边框宽度(单位像素,可用小数)
Shadow 阴影深度(单位像素,可用小数,右下偏移)
Alignment 对齐方式(同小键盘布局,决定了旋转/定位/缩放的参考点)
MarginL 左边距(字幕距左边缘的距离,单位像素,右对齐和中对齐时无效)
MarginR 右边距(字幕距右边缘的距离,单位像素,左对齐和中对齐时无效)
MarginV 垂直边距(字幕距垂直边缘的距离,单位像素,下对齐时表示到底部的距离;上对齐时表示到顶部的距离;中对齐时无效,文本位于垂直中心)
Encoding 编码( 0=ANSI,1=默认,128=日文,134=简中,136=繁中,一般用默认1即可 )

其中脚本支持的颜色格式是:&Haabbggrr,均为十六进制,取值0-9,A-F。
前2位(alpha)为透明度,00=不透明,FF=DEC255=全透明;
后6是BGR蓝绿红颜色。 排在最前的00可以忽略不写, 如:{\c&HFF&}={\c&H0000FF&}为纯红色、&HFFFFFF=纯白色、&HC8000000=透明度为200的黑色。

4、[Events]部分

该部分的一个典型示例是:

[Events]
Format: Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: Marked=0,0:00:01.18,0:00:06.85,DefaultVCD, NTP,0000,0000,0000,,{\pos(400,570)}Like an angel with pity on nobody

[Event]部分由格式行(Format:)和多个事件行组成。格式航定义了事件行中各种字段的具体含义,因此格式行必须出现在所有事件前。事件行包括:

  • Dialogue: 这是一个“对话”事件,用于显示一些文本。
  • Comment: 这是一个“评论”事件,它包含与对话、图片、声音、电影或命令事件相同的信息,但在脚本回放期间会被忽略。
  • Picture: 这是一个“图片”事件 ,意味着SSA将显示指定的.bmp、.jpg、.gif、.ico或.wmf图形(不支持.png, 且filter不支持加载图片)。
  • Sound: 这是一个“声音”事件,意味着SSA将播放指定的.wav文件。 (filter不支持)
  • Movie: 这是一个“影片”事件,意味着SSA将播放指定的.avi文件。 (filter不支持)
  • Command: 这是一个“命令”事件,意味着SSA将执行指定的程序作为后台任务。 (filter不支持)

注意后面三个使用频率及兼容性过低,这里不作深入分析。

4.1 格式行Format:

Format 行必须出现在所有事件行之前,因为它决定了SSA如何来解析下面的事件行。其所列出的字段必须正确拼写。字段名如下:
Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text

最后的字段总是 Text,以便其可以包含逗号。
格式行支持在未来的脚本格式中添加新的字段,也支持旧版本的软件读出它所能识别的字段,即便字段的顺序发生了变化。其中各字段含义如下:

編號 欄位名稱 備註
1 Marked Marked=0,表示在SSA中該行不顯示為已標識。
Marked=1,表示在SSA中該行顯示為已標識。
通常設定Marked為0
2 Layer 任何整數。
有不同圖層數值的字幕會在重疊偵測中被忽略。
大數值的圖層會覆蓋在小數值的圖層上面。
3 Start 事件的開始時間,格式為0:00:00:00(小時:分:秒:毫秒),最小單位為0.01s。它是字幕顯示在螢幕上時腳本播放經過的時間。注意小時只有一位。
4 End 事件的結束時間,格式為0:00:00:00(小時:分:秒:毫秒)。它是字幕在螢幕上消失時腳本播放經過的時間。注意小時只有一位。
5 Style 樣式名稱。如果為 Default,那麼你自己的*Default樣式會取代它。
然而,如果腳本作者要使用的Default樣式已儲存在腳本中卻被SSA忽略了,如果你要使用它,你可以修改樣式定義行裡的名稱,以便它出現在腳本的樣式清單裡。
在實際的應用程式中,若在[v4 Styles]中定義好Default樣式,如果之後使用了未定義的樣式名,那麼就使用Default樣式。如果Default樣式也沒有定義,那麼才使用渲染器自帶的樣式。
6 Name 角色名稱。說出這條對白的角色名。只為了在編輯設定時間軸時方便辨認。
7 MarginL 4位元的左邊距覆寫值(為像素)。 0000 表示使用在Style行中定義的值。
8 MarginR 4位元的右邊距覆寫值(為像素)。 0000 表示使用在Style行中定義的值。
9 MarginV 4位元的垂直邊距覆寫值(為像素)。 0000 表示使用在Style行中定義的值。
10 Effect 過渡效果。可以為空值,或為在SSA v4.x實現的三種過渡效果之一。
效果名稱區分大小寫,必須正確拼寫,不加引號。
Karaoke,表示卡拉OK效果,依序高亮每個字。作為一個效果類型已經廢棄不用。

Scroll up;y1;y2;delay[;fadeawayheight],表示文字或圖片會在螢幕上向上滾動。
Scroll up之後的參數欄位以分號分隔。
y1和y2值(為像素)定義了文字在螢幕上滾動的垂直區域。兩個值位置可以互換。如果兩個值都是 0,文字會在整個螢幕高度向上捲動。
delay值可取值1到100以降低滾動的速度,0表示無延遲以原速度滾動。當delay值大於1時,移動1像素需要(1000/delay)秒。
fadeawayheigh值可選,可以讓文字捲動到其範圍的邊緣時呈現淡出效果。

Scroll down;y1;y2;delay[;fadeawayheight],同上,為向下滾動。

Banner;delay[;lefttoright;fadeawaywidth],表示所有文字都忽略長度到一行裡,從右向左滾動經過螢幕。
delay值同上。
lefttoright值可選,取值0或1。預設為0,表示從右向左滾動。
fadeawaywidth值同上。
11 Text 字幕文字。它是作為字幕實際出現在螢幕上的文字。任何第9個逗號之後的文本都被當作是字幕文本,所以它可以包含逗號。文字中可以包含表示換行的\n程式碼,也可以包含在大括號{}之間出現的樣式覆寫控制碼

4.2 事件行

其中Dialog事件依照上述格式行給出的欄位順序給出對應數字。

Comment、Picture、Sound、Movie、Command事件行僅僅把Text欄位換成了對應的參數資訊。例如Comment的評論訊息,Command的指令全路徑,Picture的圖片路徑等等。

5、樣式控制會覆寫程式碼以及特效範例

上述四個部分是基本的SSA/ASS格式。那麼為了實現各種特效,其實就是需要在Dialog的Text中嵌入各種樣式控制覆寫程式碼的。以下簡單總結下:

  • 除了\h\n\N,所有覆寫程式碼都寫在大括號{}內。
  • 所有覆寫程式碼都以反斜線\開頭。
  • 一個大括號{}內可以放多個覆寫程式碼。
  • 所有覆寫程式碼都作用於其後的所有文字。如果要讓某個覆寫程式碼只作用於選定的文字,你要在選定文字的後面加上一個「取消」用的覆寫程式碼,來取消前面那個覆寫程式碼。
  • 某些覆寫程式碼會自動作用於整行文本,目前只有Alignment程式碼,之後可能會加入更多(例如,陰影和邊框深度的覆寫)。
  • \pos\move等也會作用於整行文本,以下的具體說明中會提到。

在下面的寫法中,包圍的表示參數,用[]包圍的表示可選,<..></..>選擇一項。 在實際程式碼中並沒有類似符號。

\[]c當c後面不跟其他字元時,會設定為目前使用的Style中所定義的對應的值。 a[&][H]\alpha[&][H]\a是一個數字,決定了字幕顯示在螢幕上哪個位置。 \an與小鍵盤佈局相同。如果出現了多個\a或\an則以第一個出現的為準。 \q是一個數字,與\r[] 在[v4 Styles ]中定義的樣式名,它會把這行中所有它之後的文字設定為樣式名對應的樣式。如果沒有寫 或 沒有被定義,將會設定為預設樣式。 提供字幕的移動效果。 \pos(,)
覆寫程式碼 釋義及備註
\n 換行。如果啟用了智慧換行,\n會被忽略。
寫法舉例:這是第一行\n這是第二行。
\n只在WrapStyle:2\q2時會換行,其他模式下都相當於一個空格。
\N 強制換行。當智慧換行啟用時用來代替\n實作換行。
任何模式下都會強制換行。在xy-VSFilter中,\N在過渡效果Banner中也會換行;在libass中,\N在Banner中不換行,相當於空格。
\h 硬空格。不換行,暨可確保在顯示字幕時不會在它的這個空格上分行(保證左右兩個字在同一行)。
\b #\b1文字加粗,\b0取消粗體。
當這個參數大於1,它會作為字體的重量值(400 = 普通,700 = 粗體,注意:大多數字體的粗細可以量化為2-3個等級)。
\i #\i1文字加斜體,\i0取消斜體。
\u #\u1為文字加上底線,\u0取消文字底線。
\s #\s1為文字加上刪除線,\s0取消文字刪除線。
\bord
\xbord
\ybord
邊框寬度,單位為像素,可以是小數。有x或y時可以單獨設定沿X軸或Y軸的邊框寬度。
寫法範例:\bord1\xbord2\ybord3
\shad
\xshad
\yshad
陰影深度,單位為像素,可以是小數。有x或y時可以單獨設定沿X軸或Y軸的陰影深度。
寫法範例:\shad1、\xshad2、\yshad3。
\fn 指定一個系統中已安裝的字型。區分大小寫。如果指定的字型沒有安裝,那麼就會使用 Arial字型
寫法範例:\fn微軟雅黑
\fs 是一個數字,指定了字型點的尺寸。
注意,這裡的字體尺寸並不是字號的大小,\fs20並不是字體大小(font-size)為20px,而是指其行高(line-height)為20px,主要是因為VSFilter使用的Windows GDI的字型介面。
\fs
\fs-
#將目前文字的字型尺寸乘以一定的倍數。例如,\fs 2表示將目前文字的字體尺寸乘以1.2,\fs-3表示將目前文字的字體尺寸乘以0.7。計算方式為(10 ± ) * 目前字體尺寸,當計算的結果小於等於0時結果不生效,即仍為原來的字體尺寸。
\fscx
\fscy
縮放文字大小。 \fscx為水平縮放,\fscy為垂直縮放。
寫法範例:\fscx233.33\fscy50。可適用於向量圖形。
\fsp 它改變字元之間的距離,預設為0。寫法舉例:\fsp3
\fr
\frx
\fry
\frz
#表示沿X/Y/Z軸旋轉一定的度數。 \fr表示沿Z軸旋轉。
寫法範例:\fr30\frx-30\fry-233.33\frz480
其旋轉的原點由\org決定,如果沒有指定\org,那麼就按「預設定位點」來旋轉。
\fax
\fay
分別沿X軸和Y軸對文字行進行傾斜調整。如\fax-0.5等同於斜體。一般情況下因數的絕對值不要超過2。
\fe 指定文字的字元集(字型編碼)。通常0為英文,1為系統默認,134為簡體中文,136為繁體中文。
一般字幕檔案儲存為Unicode方式編碼如UTF-8時,可以忽略該設定。
\[]c[&][H][&] <bbggrr> </bbggrr>是一個十六進位的RGB值,但顏色順序相反,前導的0可以省略。
可選值為 1、2、3和 4,分別對應單獨設定PrimaryColour、SecondaryColour、OutlineColor 和 BackColour,未寫入時相當於設定 為PrimaryColour。
寫法範例:\c&HFF0000&\1c&HFF&\2c&HFF00&\3c&HFFFFFF、#FF#\4cFFFF 。其中的&和H依規範應該是要有的,但是如果沒有也能正常解析。
[&] 是一個十六進位的透明度數值,00為不透明,FF為全透明。 意義同上,但這裡不能省略。
寫法舉例:
\1a&H80&\2a&H80\3a80\4a&H80&其中的&和H依規範應該是要有的,但是如果沒有也能正常解析。
[&] 是十六進位的透明度數值,00為不透明,FF為全透明。它預設相當於\1a&H&寫法舉例:
\alpha80
1、2、3 分別是底部的居左、居中、居右;
5、6、7 分別是頂部的居左、居中、居右;
9、10、11 分別是中部的居左、居中、居右。
如果是0或沒有就設定為預設位置。如果出現了多個\a或\an則以第一個出現的為準。
WrapStyle相同。 0:智慧換行,分割比較均勻,上面的行較長。
1:從行尾的字換行,只有 \N 能強制換行。
2:不換行,\n 和 \N 強制換行。
3:和 0 一樣智慧換行,下面的行較長。
例如,假設已定義了把字體設為藍色的Blue 樣式,
{\1c&HFF&}這裡是紅色{\rBlue}這裡是藍色{ \1c&HFF00&}這裡是綠色。
\move(,,,[,,]) ,是開始點座標,,是結束點座標。
是相對於字幕顯示時間的開始動作與結束動作的毫秒時間。
之前,字幕定位在,
之間,字幕從,均速移動到,
之後,字幕定位在,
沒寫或都是 0 時,則在字幕的整個時間內均速移動。 當一行中有多個 \pos 和 \move 時,以第一個為準。
當\move 和Effect 效果同時存在時,結果比較迷。
當一行含有 \move 時會忽略字幕重疊衝突的偵測。
將字幕定位在座標點,。螢幕的左上角為0,0。字幕的「定位點」由\a\an
Alignment決定。例如:
\an1的定位點在字幕的左下角。
\an2的定位點在字幕底邊的正中間。
\an3的定位點在字幕的右下角。
\an4的定位點在字幕左邊線的正中間。
\an5的定位點在字幕垂直水平的正中間。
\an6的定位點在字幕右邊線的正中間。
\an7的定位點在字幕的左上角。
\an8的定位點在字幕頂邊的正中間。
\an9的定位點在字幕的右上角。 當一行中有多個\pos\move時,以第一個為準。事實上\pos(<x>,<y>)</y></x>相當於
\move(,,,,0 ,0)###。 ###当一行中含有 \pos 时会忽略字幕重叠冲突的检测。
\org\(<x>,<y>)</y></x> 设置字幕的原点为,。字幕的原点会影响其旋转效果,字幕是基于原点来旋转的。当未设置时默认为字幕的定位点。
当一行中有多个\org时,以第一个为准。
原点就是定位点,定位点就是原点。
\fad(<t1>,<t2>)</t2></t1> 提供简单的淡入淡出效果。t1为淡入时间长度,t2为淡出时间长度。单位为毫秒。
当一行中有多个 \fad 或 \fade 时,以第一个为准。
\fade(<a1>,<a2>,<a3>,<t1>,<t2>,<t3>,<t4>)</t4></t3></t2></t1></a3></a2></a1> 提供复杂的淡入淡出效果。单位为毫秒。

之前,透明度为
之间,透明度由变化到
之间,透明度为
之间,透明度由变化到
之后,透明度为
当 \fade 只有两个参数时,其效果与 \fad 一致。
当一行中有多个 \fad 或 \fade 时,以第一个为准。
\[i]clip(<x1>,<y1>,<x2>,<y2>)</y2></x2></y1></x1> 定义一个矩形,只有在该矩形范围内的内容可见或不可见。,为矩形的左上角,,为矩形的右下角。\clip 是矩形范围内可见,\iclip 是矩形范围内不可见。
当一行中有多个\[i]clip出现时,以最后一个为准。
\[i]clip([,]) 定义一个绘画图形,只有在该绘画图形范围内的内容可见或不可见。 和 的含义与 \p 相同。

这里举一个我实际中使用过的示例:
需要控制字幕显示的行间距,需要怎么做呢?
假设字幕预设字体大小为16,下面文本如何控制行间距?

…很长的字幕…\N…下一行字幕…

虽然这里有\N换行符了,但显示出来还是两行紧挨在一起,没有行距。
那么参考上面的覆盖代码,可以通过下面命令调整行间距:

…很长的字幕…\N{\fs12}\N{\fs16}…下一行字幕…

当然最终行间距数值按照需求更改就行了。

6、小结

SSA/ASS是相对复杂的字幕格式,但其也具有丰富的功能集及可扩展性。本文简要概述了SSA/ASS字幕文件的主要构成及基本样式覆盖代码。

更多相关知识,请访问常见问题栏目!

以上是ass是什麼文件的格式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn