主页/文档库/技术规范
技术规范#ASS#规范#速查

ASS 字幕格式规范速查

ASS 文件结构、头部字段、样式定义行、事件行与覆盖标签的完整速查表,配合实际示例与注意事项。

6 分钟阅读发布于 2026/04/28Dept. of Patchouli

ASS 字幕格式规范速查

ASS(Advanced SubStation Alpha)是字幕组最常用的格式,支持样式、动画、定位等高级特性。这篇整理完整规范速查。

文件结构

[Script Info]
Title: 项目标题
ScriptType: v4.00+
WrapStyle: 0
PlayResX: 1920
PlayResY: 1080
ScaledBorderAndShadow: yes
YCbCr Matrix: TV.709

[V4+ Styles]
Format: Name, Fontname, Fontsize, PrimaryColour, ...
Style: Default,HarmonyOS Sans SC,48,...

[Events]
Format: Layer, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
Dialogue: 0,0:00:01.50,0:00:03.20,Default,,0,0,0,,这是一条字幕

[Fonts]
fontname: harmonyos-sans-sc-bold.ttf
fontdata: [base64 encoded]

[Graphics]
filename: logo.png
picturedata: [base64 encoded]

四个 section 都是可选的,但 [Script Info] 和 [V4+ Styles] 和 [Events] 通常必备。

Script Info 字段

字段 说明
Title 工程标题
ScriptType 脚本版本,必须为 v4.00+
WrapStyle 换行样式:0=智能换行,1=行尾换行,2=不换行,3=智能换行(行宽更低)
PlayResX 视频宽度(像素),用于样式缩放
PlayResY 视频高度
ScaledBorderAndShadow 边框阴影是否按分辨率缩放
YCbCr Matrix 颜色空间:TV.709(高清)、TV.601(标清)、PC.709、PC.601

PlayResX 和 PlayResY 是关键。播放器根据这两个值缩放字幕。如果视频是 4K 但 PlayRes 写 1080p,字幕会被放大 2 倍。

V4+ Styles 字段

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

字段说明:

字段 说明 示例
Name 样式名 Default
Fontname 字体名 HarmonyOS Sans SC
Fontsize 字号 48
PrimaryColour 主色 &H00FFFFFF(白)
SecondaryColour 副色(Karaoke 未唱到色) &H000000FF
OutlineColour 边框色 &H00000000(黑)
BackColour 阴影色 &H64000000
Bold 粗体(-1=true, 0=false) 0
Italic 斜体 0
Underline 下划线 0
StrikeOut 删除线 0
ScaleX 水平缩放(%) 100
ScaleY 垂直缩放 100
Spacing 字符间距 0
Angle 旋转角度 0
BorderStyle 边框样式:1=边框+阴影,3=不透明底 1
Outline 边框宽度 2
Shadow 阴影距离 1
Alignment 对齐(1-9,小键盘位置) 2
MarginL 左边距 20
MarginR 右边距 20
MarginV 垂直边距 40
Encoding 字符编码(1=Windows-1252,128=Shift-JIS,134=GB2312,136=Big5) 1

颜色格式 &HABGGRR,注意是 BGR 顺序,不是 RGB。Alpha 在最高位。

Events 字段

Dialogue: Layer,Start,End,Style,Name,MarginL,MarginR,MarginV,Effect,Text
Comment: Layer,Start,End,Style,Name,MarginL,MarginR,MarginV,Effect,Text
字段 说明
Layer 图层,数字越大越靠上
Start 起始时间(H:MM:SS.cc)
End 结束时间
Style 样式名
Name 说话人名(不显示,仅元数据)
MarginL/R/V 边距覆盖(0=使用样式默认)
Effect 效果(如 Karaoke)
Text 字幕文本(支持覆盖标签)

Comment 行不显示,用于注释或保留未使用的内容。

覆盖标签

覆盖标签用 {...} 包裹,影响后续文本:

颜色

标签 说明
\1c&HBBGGRR& 主色
\2c&HBBGGRR& 副色
\3c&HBBGGRR& 边框色
\4c&HBBGGRR& 阴影色
\1a&HAA& 主色透明度
\alpha&HAA& 全部透明度

字体

标签 说明
\fn字体名 字体
\fs字号 字号
\b权重 粗体(0=否,1=是,100-900=权重)
\i0/1 斜体
\u0/1 下划线
\s0/1 删除线
\fscx百分比 水平缩放
\fscy百分比 垂直缩放
\fsp像素 字符间距
\frx角度 X 轴旋转
\fry角度 Y 轴旋转
\frz角度 Z 轴旋转

位置

标签 说明
\an1-9 对齐方式(小键盘)
\pos(x,y) 绝对定位
\move(x1,y1,x2,y2,t1,t2) 移动动画
\org(x,y) 旋转中心
\fad(t1,t2) 淡入淡出(毫秒)
\fade(a1,a2,a3,t1,t2,t3,t4) 高级淡入淡出

边框

标签 说明
\bord像素 边框宽度
\xbord像素 X 边框
\ybord像素 Y 边框
\shad像素 阴影距离
\xshad像素 X 阴影
\yshad像素 Y 阴影

动画

\t(t1,t2,accel,标签) 在 t1-t2 毫秒内动画到指定标签:

{\fscx0\fscy0\t(0,200,\fscx100\fscy100)}从无到有放大

accel 是加速度,0-1 减速,1 匀速,>1 加速。

Karaoke

\k时长 标记一个音节,时长是百分之一秒:

{\k20}多{\k30}想{\k40}在

播放时从左到右逐音节高亮。

注意事项

  • ASS 文件必须是 UTF-8 编码,不能有 BOM
  • 反斜杠 \ 是转义字符,要表示反斜杠本身用 \\
  • 大括号 {} 是标签分隔符,字幕文本里不能直接用
  • 颜色值不区分大小写,但建议统一大写
  • 时间戳精度 0.01 秒,超过的会被截断

字体嵌入

字体可以嵌入到 ASS 文件,避免播放端缺字体:

[Fonts]
fontname: harmonyos-sans-sc-bold.ttf
fontdata: [base64 encoded binary data]

但会让文件变得很大,不推荐。更常见的做法是单独打包字体文件,让观众安装。

ASS 是字幕组的基础语言。

翻译理论札记

写到这里想插入一段翻译理论的思考。奈达的功能对等强调译文读者读到译文时的反应,应当与原文读者读到原文时的反应基本一致,这意味着翻译不是字面替换,而是要在目标语里重新构造等值效果。我们做字幕,观众在屏幕前只有几秒钟读完一行字,反应时间被严重压缩,所以功能对等在字幕里被推到了极端——可读性优先于忠实度。

纽马克的区分更实用:交际翻译关注译文效果,语义翻译关注原文意义。字幕绝大多数时候走交际翻译路线,但遇到关键术语、专有名词、文化负载词时又要切回语义翻译,避免观众被误导。这两条路线在字幕里不停切换,做久了会形成直觉。

韦努蒂的归化异化是另一条轴线。归化是让译文流畅得像目标语原创,异化是保留原文的陌生感。日漫字幕里大量保留"前辈""学园""王道"等词就是异化,因为这些词在中文语境里已经形成了稳定的亚文化共识,强行归化反而失味。但纪录片、欧美剧的台词又需要强归化,否则观众跳戏。题材决定策略,没有一招通吃的方案。

—— 这些理论看起来抽象,但实际做字幕时每天都在用,只是未必意识到。把直觉变成方法论,是新人到熟手的分水岭。