ass est le format des fichiers de sous-titres. Le nom complet d'ASS est "Advanced SubStation Alpha". Il s'agit d'un format de sous-titre avancé basé sur l'encodage SSA 4.00+. Il ajoute davantage d'effets spéciaux et d'instructions basées sur le style d'écriture SSA ; avec "*.ass" comme suffixe. Les sous-titres ASS sont des fichiers texte brut, ce qui signifie qu'ils peuvent être modifiés manuellement avec n'importe quel éditeur de texte.
L'environnement d'exploitation de ce tutoriel : système Windows 7, ordinateur Dell G3.
ASS est un format de sous-titre reconnu et fréquemment utilisé par la plupart des sous-titreurs.
SubStation Alpha (Sub Station Alpha), appelé SSA, est un format de fichier de sous-titres créé par CS Low (également connu sous le nom de Kotus) qui possède des fonctions plus avancées que les formats de sous-titres traditionnels (tels que SRT). Les fichiers plug-in pour les sous-titres dans ce format portent le suffixe *.ssa.
Advanced SubStation Alpha (ASS) est un format de sous-titres plus avancé que SSA, et sa version actuelle est SSA v4.00+. Il est construit sur le codage SSA 4.00+. Le principal changement d'ASS est d'ajouter davantage d'effets spéciaux et d'instructions basés sur le style d'écriture SSA. Les fichiers plug-in pour les sous-titres dans ce format portent le suffixe *.ass.
Actuellement, de nombreux lecteurs prennent en charge le rendu des sous-titres SSA et ASS.
ASS est compatible avec le format SSA.
Les sous-titres SSA/ASS sont des fichiers texte brut, ce qui signifie qu'ils peuvent être modifiés manuellement avec n'importe quel éditeur de texte, mais il faut noter : l'analyseur suppose que ce script suit Toute erreur dans l'analyse des règles définies dans la norme SSA peut conduire à des résultats imprévisibles.
Les scripts SSA/ASS sont divisés en plusieurs sections dans un style de fichier ini. Mais ce n'est pas un fichier ini standard.
Le script contient jusqu'à cinq sections : [Infos sur le script]
, [Styles v4+]
, [Événements]
, [Polices]
, [Graphiques]
. [Script Info]
、[v4+ Styles]
、[Events]
、[Fonts]
、[Graphics]
。
[Script Info]
必须是整个文件的第一行。[Fonts]
和[Graphics]
这两个部分了。[Script Info]
部分中的15个行类型;[v4+ Styles]
部分的样式行;[Events]
部分的6个行类型。(行类型将在后续的每部分单独介绍)。[Events]
部分的事件顺序可以打乱输入,仍可被正确播放,我们不能假定每个对话行都按照时间顺序排列在脚本文件中。Arial/宋体
[Script Info]
doit être la première ligne du fichier entier. [Polices]
et [Graphiques]
. [Script Info]
15 types de lignes dans le section ; lignes de style dans la section
[v4+ Styles]
; 6 types de lignes dans la section [Events]
. (Les types de lignes sont traités séparément dans chaque section suivante).
[Événements]
peut être brouillé et toujours joué correctement. Nous ne pouvons pas supposer que chaque ligne de dialogue est organisée par ordre chronologique dans le fichier de script. Arial/宋体
sera utilisé. Ce qui suit est un bref résumé des cinq sections principales du fichier SSA/ASS : [Infos sur le script]Cette section contient l'en-tête et les informations générales du script. [Script Info] doit être la première ligne d'un script v4. [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
Ligne de script | Remarques |
---|---|
; | Point-virgule, peut être suivi de n'importe quel contenu. Utilisé uniquement comme commentaires dans les scripts. Non visible lors du chargement du script. Le point-virgule doit être le premier caractère de la ligne. Dans les anciennes versions, utilisez l'annotation !: !: 注释 |
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% |
title pour décrire le script. S'il n'est pas spécifié, automatiquement défini sur untitled
|
Original Script L'auteur qui a initialement créé le script. S'il n'est pas spécifié, automatiquement défini sur inconnu
|
Traduction originale | (facultatif) La personne qui a initialement traduit la conversation. S'il n'est pas spécifié, ce champ n'est pas affiché. |
Original Editing | (facultatif) L'éditeur du script original, généralement la personne qui a peaufiné et relu la traduction. S’il n’est pas spécifié, cet élément n’affiche pas la personne de la chronologie d’origine. S'il n'est pas spécifié, cet élément n'est pas affiché |
Normal
, SSA essaiera d'utiliser la position spécifiée par "Marges" pour positionner les sous-titres. Dans le même temps, les sous-titres sont déplacés verticalement pour éviter les chevauchements. Dans le mode anti-chevauchement de Normal
, les nouveaux sous-titres apparaîtront au-dessus des sous-titres existants, mais il recherchera la position la plus basse sans chevauchement pour combler les "lacunes" créées par d'autres sous-titres. 🎜S'ils sont définis sur Reverse
, les sous-titres existants seront déplacés vers le haut pour faire de la place à de nouveaux sous-titres. Cela signifie que les sous-titres peuvent toujours être lus de haut en bas, mais cela signifie également que les sous-titres existants peuvent apparaître au milieu de l'écran avant que de nouveaux sous-titres n'apparaissent. Cela prend beaucoup de place à l’écran. 🎜🎜🎜🎜PlayResY🎜🎜La hauteur de la plage de rendu lors du rendu des sous-titres. Si vous jouez avec Directdraw, SSA v4 choisira automatiquement le paramètre activé le plus proche 🎜🎜🎜🎜PlayResX🎜🎜 à la largeur de la plage de rendu lors du rendu des sous-titres. Si vous jouez avec Directdraw, SSA v4 sélectionne automatiquement le paramètre activé le plus proche 🎜🎜🎜🎜PlayDepth🎜🎜profondeur de couleur lors du rendu des sous-titres. Si vous jouez avec Directdraw, SSA v4 choisira automatiquement le paramètre activé le plus proche 🎜🎜🎜🎜Timer🎜🎜vitesse de la minuterie du script, en utilisant des pourcentages à virgule flottante. Par exemple, 100.0000
représente 100 % avec quatre décimales. 🎜La vitesse de la minuterie est un multiplicateur de temps appliqué à l'horloge SSA pour fournir des temps de rampe permettant d'étendre ou de compresser la durée totale du script. Une vitesse supérieure à 100%
réduira la durée totale du script, ce qui signifie que les sous-titres apparaîtront progressivement de plus en plus tôt ; une vitesse inférieure à 100%
augmentera la durée totale du script, ce qui signifie que les sous-titres apparaîtront de plus en plus tôt. Ils se produiront progressivement de plus en plus tard (comme un temps de rampe positif). 🎜L'expansion et la compression ne se produisent que lorsque le script est en cours de lecture, cette valeur ne modifie pas l'heure réelle de la partie événement du script. 🎜🎜🎜🎜WrapStyle🎜🎜 définit la méthode de retour à la ligne par défaut. 🎜0 : Enroulement de ligne intelligent, la division est relativement uniforme et la ligne supérieure est plus longue. 🎜1 : Saut de ligne à partir du mot en fin de ligne, seul N peut forcer le saut de ligne. 🎜2 : Pas de sauts de ligne, n et N forcent les sauts de ligne. 🎜3 : Retour à la ligne intelligent comme 0, la ligne suivante est plus longue. 🎜🎜🎜🎜ScaledBorderAndShadow🎜🎜Spécifie si la largeur de la bordure et la profondeur de l'ombre évoluent proportionnellement à la résolution vidéo. 🎜🎜🎜🎜Lorsque la valeur est Non, la largeur de la bordure et la profondeur de l'ombre sont affichées exactement en fonction du nombre de pixels spécifié ; lorsque la valeur est Oui, la largeur de la bordure et la profondeur de l'ombre évoluent dans la même proportion que la résolution vidéo réelle. 🎜🎜🎜🎜🎜🎜🎜在实际应用中可能用到的是Title、PlayResX、PlayResY、WrapStyle等。
这一部分包含了所有样式的定义。每一个被脚本使用的样式都应该在这里定义。区别于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的黑色。
该部分的一个典型示例是:
[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:)和多个事件行组成。格式航定义了事件行中各种字段的具体含义,因此格式行必须出现在所有事件前。事件行包括:
注意后面三个使用频率及兼容性过低,这里不作深入分析。
Format:
Format 行必须出现在所有事件行之前,因为它决定了SSA如何来解析下面的事件行。其所列出的字段必须正确拼写。字段名如下:
Marked, Start, End, Style, Name, MarginL, MarginR, MarginV, Effect, Text
最后的字段总是 Text,以便其可以包含逗号。
格式行支持在未来的脚本格式中添加新的字段,也支持旧版本的软件读出它所能识别的字段,即便字段的顺序发生了变化。其中各字段含义如下:
Number | Field name | Remarks |
---|---|---|
1 | Marked | Marked=0, indiquant que la ligne n'est pas affichée comme marquée dans SSA. Marked=1, indiquant que la ligne est affichée comme marquée en SSA. Habituellement, définissez Marked sur 0 |
2 | Layer | n'importe quel entier. Les sous-titres avec des valeurs de calque différentes seront ignorés lors de la détection de chevauchement. Les calques avec de grandes valeurs seront superposés aux calques avec de petites valeurs. |
3 | Début | L'heure de début de l'événement, le format est 0:00:00:00 (heure : minute : seconde : milliseconde), l'unité minimale est de 0,01 s . Il s'agit du temps qui s'écoule lors de la lecture du script pendant que les sous-titres sont affichés à l'écran. Notez qu'il n'y a qu'une heure. 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] 4 |
L'heure de fin de l'événement, le format est 0:00:00:00 (heure:minute:seconde:milliseconde). Il s'agit du temps qui s'écoule lors de la lecture du script avant que les sous-titres ne disparaissent de l'écran. Notez qu'il n'y a qu'une heure. |
5Style |
Karaoké
, indique l'effet karaoké, en mettant en évidence chaque mot tour à tour. Obsolète en tant que type d’effet. 🎜🎜Scroll up;y1;y2;delay[;fadeawayheight]
, indiquant que le texte ou les images défileront vers le haut sur l'écran. 🎜Les champs de paramètres après Scroll up sont séparés par des points-virgules. 🎜Les valeurs y1 et y2 (en pixels) définissent la zone verticale de l'écran où le texte défilera. Les deux positions de valeur sont interchangeables. Si les deux valeurs sont 0, le texte défilera sur toute la hauteur de l'écran. 🎜La valeur du délai peut varier de 1 à 100 pour réduire la vitesse de défilement. 0 signifie défiler à la vitesse d'origine sans délai. Lorsque la valeur du délai est supérieure à 1, il faut (1 000/délai) secondes pour déplacer 1 pixel. 🎜La valeur fadeawayheigh est facultative et peut provoquer un fondu du texte lorsqu'il défile jusqu'au bord de sa plage. 🎜🎜Fadeawayheight]
, comme ci-dessus, pour faire défiler vers le bas. 🎜🎜Banner;delay[;lefttoright;fadeawaywidth]
signifie que tout le texte sera ignoré et allongé sur une ligne, et défilera sur l'écran de droite à gauche. 🎜La valeur du délai est la même que ci-dessus. 🎜La valeur de gauche à droite est facultative et prend la valeur 0 ou 1. La valeur par défaut est 0, ce qui signifie un défilement de droite à gauche. La valeur de 🎜fadeawaywidth est la même que ci-dessus. 🎜🎜🎜🎜11🎜🎜Texte🎜🎜Texte des sous-titres. C'est le texte qui apparaît réellement à l'écran sous forme de sous-titres. Tout texte après la 9ème virgule est considéré comme un texte de sous-titre et peut donc contenir des virgules. Le texte peut contenir le code n qui représente un saut de ligne, ou il peut contenir le code de contrôle de remplacement de style 🎜 qui apparaît entre accolades {}. 🎜🎜🎜🎜L'événement Dialog donne les numéros correspondants dans l'ordre des champs indiqués dans la ligne de format ci-dessus.
Les lignes d'événements Commentaire, Image, Son, Film et Commande remplacent uniquement le champ Texte par les informations de paramètre correspondantes. Par exemple, les informations de commentaire de Comment, le chemin de commande complet de Command, le chemin d'image de Picture, etc.
Les quatre parties ci-dessus constituent le format de base SSA/ASS. Ainsi, afin d'obtenir divers effets spéciaux, il est en fait nécessaire d'intégrer divers codes de remplacement de contrôle de style dans le texte de la boîte de dialogue. Voici un bref résumé :
h
, n
et N
, tous les codes de remplacement sont écrits entre accolades {}. h
、n
和N
,所有覆写代码都写在大括号{}内。
开头。{}
内可以放多个覆写代码。Alignment
代码,之后可能会加入更多(例如,阴影和边框深度的覆写)。pos
和move
等也会作用于整行文本,下面的具体说明中会提到。在下面的写法中,包围的表示参数,用
[]
包围的表示可选,<..></..>
Tous les codes remplacés commencent par une barre oblique inverse .
{}
. Tous les codes de remplacement s'appliquent à tout le texte qui les suit. Si vous souhaitez qu'un code de remplacement s'applique uniquement au texte sélectionné, vous devez ajouter un code de remplacement « annuler » après le texte sélectionné pour annuler le code de remplacement précédent. 🎜Certains codes de remplacement s'appliqueront automatiquement à toute la ligne de texte. Actuellement, il n'y a que du code Alignement
, et d'autres pourront être ajoutés ultérieurement (par exemple, les remplacements de l'ombre et de la profondeur des bordures). 🎜pos
et move
agiront également sur toute la ligne de texte, comme cela sera mentionné dans les instructions spécifiques ci-dessous.
signifie paramètres, et []
signifie facultatif <.. ..></..>
Sélectionnez un élément. 🎜Il n'y a pas de symbole similaire dans le code actuel. 🎜Écraser le code | Explication et remarques |
---|---|
n | Nouvelle ligne. Si l'habillage intelligent est activé, n est ignoré. 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> Exemple d'écriture : Ceci est la première ligne nCeci est la deuxième ligne. n ne s'enroulera que lorsque WrapStyle:2 ou q2 Dans d'autres modes, cela équivaut à un espace. 🎜🎜🎜🎜N🎜🎜Forcer une nouvelle ligne. Lorsque le retour à la ligne intelligent est activé, il est utilisé à la place de n pour implémenter le retour à la ligne. 🎜Les sauts de ligne seront forcés dans n'importe quel mode. Dans xy-VSFilter , N sera également enveloppé dans la bannière d'effet de transition ; dans libass , N sera présent. pas de saut de ligne dans Banner, ce qui équivaut à des espaces. 🎜🎜🎜🎜h🎜🎜espaces durs. Sans saut de ligne, cela garantit que les sous-titres ne se briseront pas sur cet espace lors de leur affichage (pour garantir que les mots de gauche et de droite soient sur la même ligne). 🎜🎜🎜🎜b🎜🎜b1 met le texte en gras, b0 annule la mise en gras. 🎜Lorsque ce paramètre est supérieur à 1, il sera utilisé comme valeur de poids de la police (400 = normal, 700 = gras, remarque : l'épaisseur de la plupart des polices peut être quantifiée en 2-3 niveaux). 🎜🎜🎜🎜i🎜🎜Le texte i1 est en italique, i0 est en italique. 🎜🎜🎜🎜u🎜🎜u1 souligne le texte, u0 annule le soulignement du texte. 🎜🎜🎜🎜s🎜🎜s1 ajoute du barré au texte, et s0 annule le barré du texte. 🎜🎜🎜🎜bordbord1 , xbord2 , ybord3 . 🎜🎜🎜🎜shadPolice Arial sera utilisée. 🎜Exemple d'écriture : fnMicrosoft Yahei . 🎜🎜🎜🎜fs🎜🎜 est un nombre qui spécifie la taille en points de la police. 🎜Notez que la taille de la police ici n'est pas la taille de la police. fs20 ne signifie pas que la taille de la police (font-size) est de 20 px, mais sa hauteur de ligne (line-height) est de 20 px, principalement. car VSFilter utilise l'interface de police Windows GDI. 🎜🎜🎜🎜fs+fs+2 signifie multiplier la taille de police du texte actuel par 1,2, et fs-3 signifie multiplier la taille de police du texte actuel par 0,7. La méthode de calcul est (10 ± fscx<pourcentage></pourcentage> est une mise à l'échelle horizontale, fscy<pourcentage></pourcentage> est une mise à l'échelle verticale. 🎜Exemples d'écriture : fscx233.33 , fscy50 . Peut être utilisé pour les graphiques vectoriels. 🎜🎜🎜🎜fspfsp3 . 🎜🎜🎜🎜frfr<degr></degr> signifie rotation le long de l'axe Z. 🎜Exemples d'écriture : fr30 , frx-30 , fry-233.33 , frz480 . 🎜L'origine de sa rotation est déterminée par org Si org n'est pas spécifié, alors la rotation sera basée sur le "point d'ancrage par défaut". 🎜🎜🎜🎜faxfax-0.5 équivaut à l'italique. En général, la valeur absolue du facteur ne doit pas dépasser 2. 🎜🎜🎜🎜fe<bbggrr></bbggrr> est une valeur RVB hexadécimale, mais la couleur l’ordre est inversé et le premier 0 peut être omis. 🎜Exemples d'écriture : c&HFF0000& , 1c&HFF& , 2c&HFF00& , 3c&HFFFFFF , 4cFFFFFF . Le & et le H doivent être présents conformément à la spécification, mais sinon, ils peuvent être analysés normalement. |
[ |
Lorsque c n'est pas suivi d'autres caractères, il sera défini sur celui défini dans le caractère actuellement utilisé. Valeur correspondante du style. |
c&HFF0000& 、1c&HFF& 、2c&HFF00& 、3c&HFFFFFF 、4cFFFFFF 。其中的&和H按规范应该是要有的,但是如果没有也能正常解析。 |
|
[]c | 当c后面不跟其他字符时,会设置为当前使用的Style中所定义的对应的值。 |
a[&][H] |
含义同上,但这里不能省略。 写法举例: 1a&H80& 、2a&H80 、3a80 、4a&H80& 。其中的&和H按规范应该是要有的,但是如果没有也能正常解析。 |
alpha[&][H] |
1a&H<aa>&</aa> 。写法举例: alpha80 。 |
a | 是一个数字,决定了字幕显示在屏幕上哪个位置。 1、2、3 分别是底部的居左、居中、居右; 5、6、7 分别是顶部的居左、居中、居右; 9、10、11 分别是中部的居左、居中、居右。 如果是0或者没有就设置为默认位置。如果出现了多个a或an则以第一个出现的为准。 |
an | 与小键盘布局相同。如果出现了多个a或an则以第一个出现的为准。 |
q | 是一个数字,与WrapStyle 相同。0:智能换行,分割比较均匀,上面的行较长。 1:从行尾的词换行,只有 N 能强制换行。 2:不换行,n 和 N 强制换行。 3:和 0 一样智能换行,下面的行较长。 |
r[] | 是在[v4 Styles+]中定义的样式名,它会把这行中所有它之后的文本设置为样式名对应的样式。如果没有写 或者 没有被定义,将会设置为默认样式。 例如,假设已定义了把字体设为蓝色的 Blue 样式, {1c&HFF&} 这里是红色{rBlue} 这里是蓝色{1c&HFF00&} 这里是绿色。 |
move(<x1>,<y1>,<x2>,<y2>[,<t1>,<t2>])</t2></t1></y2></x2></y1></x1> |
提供字幕的移动效果。 在 在 在 当 当一行中有多个 pos 和 move 时,以第一个为准。 当move 和Effect 效果同时存在时,结果比较迷。 当一行中含有 move 时会忽略字幕重叠冲突的检测。 |
pos(<x>,<y>)</y></x> |
将字幕定位在坐标点a 、an 和Alignment 决定。例如:an1 的定位点在字幕的左下角。an2 的定位点在字幕底边的正中间。an3 的定位点在字幕的右下角。an4 的定位点在字幕左边线的正中间。an5 的定位点在字幕垂直水平的正中间。an6 的定位点在字幕右边线的正中间。an7 的定位点在字幕的左上角。an8 的定位点在字幕顶边的正中间。an9 的定位点在字幕的右上角。当一行中有多个 pos 和move 时,以第一个为准。事实上pos(<x>,<y>)</y></x> 相当于move(<x>,<y>,<x>,<y>,0,0)</y></x></y></x> Exemples d'écriture : 1a&H80& , 2a&H80 , 3a80 , 4a&H80& . 🎜Le & et le H doivent être présents conformément à la spécification, mais sinon, ils peuvent être analysés normalement. |
alpha[&][H] |
1a&H<aa>&</aa> . 🎜Exemple d'écriture : alpha80 . |
a<position></position> | |
une |
Identique à la disposition du clavier. S'il y a plusieurs a ou an, le premier qui apparaît prévaudra. |
q |
WrapStyle . 🎜0 : Enroulement de ligne intelligent, la division est relativement uniforme et la ligne supérieure est plus longue. 🎜1 : Saut de ligne à partir du mot en fin de ligne, seul N peut forcer le saut de ligne. 🎜2 : Pas de sauts de ligne, n et N forcent les sauts de ligne. 🎜3 : Retour à la ligne intelligent comme 0, la ligne suivante est plus longue. |
r[ |
{1c&HFF&} Voici le rouge{rBlue> Voici le bleu{1c&HFF00& } C'est vert. |
déplacer(<x1>,<y1>,<x2>,<y2>[,<t1>,<t2>] )</t2></t1></y2></x2></y1></x1> |
Fournit l'effet émouvant des sous-titres. |
pos(< ;x>,<y>)</y> |
Positionnez les sous-titres aux points de coordonnées a<position></position> , an<position></position> et Alignement . Par exemple : Le point d'ancrage de 🎜an1 se trouve dans le coin inférieur gauche du sous-titre. Le point de positionnement de 🎜an2 se trouve au milieu du bord inférieur du sous-titre. Le point d'ancrage de 🎜an3 se trouve dans le coin inférieur droit du sous-titre. Le point de positionnement de 🎜an4 se trouve au milieu de la ligne gauche du sous-titre. Le point de positionnement de 🎜an5 se trouve au milieu des sous-titres verticalement et horizontalement. Le point de positionnement de 🎜an6 se trouve au milieu de la ligne droite du sous-titre. Le point d'ancrage de 🎜an7 se trouve dans le coin supérieur gauche du sous-titre. Le point de positionnement de 🎜an8 se trouve au milieu du bord supérieur des sous-titres. Le point d'ancrage de 🎜an9 se trouve dans le coin supérieur droit des sous-titres. 🎜Lorsqu'il y a plusieurs pos et move dans une ligne, le premier prévaudra. En fait, pos(<x>,<y>)</y></x> est équivalent à move(<x>,<y>,<x>,<y>, 0, 0)</y></x></y></x> . 🎜当一行中含有 \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> |
定义一个矩形,只有在该矩形范围内的内容可见或不可见。 当一行中有多个 \[i]clip 出现时,以最后一个为准。 |
\[i]clip([,]) |
定义一个绘画图形,只有在该绘画图形范围内的内容可见或不可见。 和 的含义与 \p 相同。 |
这里举一个我实际中使用过的示例:
需要控制字幕显示的行间距,需要怎么做呢?
假设字幕预设字体大小为16,下面文本如何控制行间距?
…很长的字幕…\N…下一行字幕…
虽然这里有\N换行符了,但显示出来还是两行紧挨在一起,没有行距。
那么参考上面的覆盖代码,可以通过下面命令调整行间距:
…很长的字幕…\N{\fs12}\N{\fs16}…下一行字幕…
当然最终行间距数值按照需求更改就行了。
SSA/ASS是相对复杂的字幕格式,但其也具有丰富的功能集及可扩展性。本文简要概述了SSA/ASS字幕文件的主要构成及基本样式覆盖代码。
更多相关知识,请访问常见问题栏目!
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!