可以。下面我按视频实际操作顺序,把这个教程拆成一份可复刻的 AE 教程。
我先说结论,避免你走弯路:
这条视频里,真正“必须订阅 Submagic”才能做的,只是中间那段 AI 自动字幕流程。
如果你的目标是复刻 AE 里的标题高亮、文字框自动适配、发光描边,不需要 Submagic。
但视频后半段还有两套“快速法”用到了作者自己的外部预设:
Text Highlights PresetText Boxpreset
这两个不是 Submagic,但如果你想完全照着后半段的“预设法”点同样的按钮,你需要作者提供的 preset 文件。
不过你不用担心,因为作者前半段已经把手动版做出来了,前半段是可以独立复刻的。
一、视频里一共做了哪 4 件事
1)手动做“文字依次出现 + 高亮扫过”
这是最核心的一段,不需要 Submagic。
2)手动做“会跟着文字自动变宽的文字框”
也不需要 Submagic。
3)演示 Submagic 自动字幕
这段是赞助内容。
只有这段自动字幕工作流才需要 Submagic。
4)演示作者自己的 Highlight / Text Box 预设
这段要用作者外部 preset。
但视觉逻辑和前面的手动版是一致的。
二、按视频实操整理的 AE 复刻教程
下面按时间顺序来。
A. 手动版:标题高亮动画(00:32 开始)
第 1 步:建立标题文字
作者进入 AE 后,先做一个居中的单行标题。
操作路径:
- 选择 Text Tool / 文字工具
- 在合成窗口点击输入文字
Create Bold, Readable Animation - 选中文字层
- 在右侧 Align 面板中,对齐到合成中心
从画面里能确认到的文字参数大致是:
- 字体:Darker Grotesque
- 字重:Bold
- 字号:58 px
- 颜色:白色
- 段落:居中
这个阶段只是静态标题。
第 2 步:做“文字出现”动画(Animation IN)
作者在文字层里直接加文字动画器。
操作路径:
- 选中文本层
- 展开
Text - 点击右侧 Animate
- 选择 Scale
这时会自动生成一个 Animator。作者把它重命名成:
- Animation IN
然后设置:
Scale = 0%
接着展开:
Range Selector 1
此时可以确认到这些值:
Start = 0%End = 100%Offset之后要拿来驱动显隐
再展开:
Advanced
能看到这些项目:
Units = PercentageBased On = CharactersMode = AddAmount = 100%Shape = Square
作者这里演示了一次:
- 把
Smoothness从默认值改到 0%
这样文字的出现会更像“打字机式”的硬切字符出现。
但他演示完以后,又把 Smoothness 调回了 100% ,再继续往下做。
所以这里你要分两种情况理解:
- 你想要更像打字效果:
Smoothness = 0% - 你想跟作者后面这套扫光逻辑更接近:先按他视频里那样,最后回到 100%
第 3 步:加“高亮扫过”的第二个文字动画器
作者再次选中文本层,再加一个 Animator。
操作路径:
- 选中文本层
- 点击 Animate
- 选择 Fill Color > RGB
然后在这个同一个 Animator 里继续点:
Add > Property > Position
也就是这个第二个动画器里同时有:
- Fill Color
- Position
作者把这个 Animator 重命名为:
- Highlight 1
然后调整:
Fill Color改成蓝色Position先保持0,0,0
这里作者选的是偏亮的蓝色。
后面做文字框渐变时,左侧颜色能看清接近 #00AFFF,高亮蓝色风格基本是一致的。
第 4 步:给高亮系统加 3 个 Slider Control
作者为了不手动拖选择器,给文本层添加了 3 个滑块控制器。
操作路径:
- 打开 Effects & Presets
- 搜索
Slider - 拖一个 Slider Control 到文本层上
- 复制两次
作者强调了命名要对,否则表达式会失效。
从画面和表达式引用可确认,推荐你直接用下面这组名字:
- Highlight Position 1
- Animation Amount 1
- Falloff Radius 1
注意是最后带数字 1。
第 5 步:把 Highlight 1 原来的 Range Selector 删掉,换成 Expression Selector
作者没有继续用普通 Range Selector 控高亮,而是换成表达式选择器。
操作路径:
- 展开
Highlight 1 - 删除它自带的
Range Selector 1 - 选中
Highlight 1 - 点击
Add > Selector > Expression Selector
这样就得到:
Expression Selector 1
默认它的 Amount 上会有一段 AE 自带表达式。
作者把这段默认表达式删掉,粘贴了他自己的外部表达式。
这里我必须如实说明
视频里作者是从外部文档复制后直接粘贴,
完整代码并没有在画面中完整停留到足够清晰可逐字确认。
所以我不能假装说“下面就是视频里逐字逐句完全可见的原始代码”。
但为了让你能复刻,我给你一段等效表达式,逻辑和作者演示出来的效果是一致的:
pos = effect("Highlight Position 1")("Slider");
amt = effect("Animation Amount 1")("Slider");
radius = effect("Falloff Radius 1")("Slider");
target = linear(pos, 0, 100, 1, textTotal);
d = Math.abs(textIndex - target);
if (radius <= 0){
d < 0.5 ? amt : 0;
}else{
ease(d, 0, radius, amt, 0);
}
把这段粘贴到:
Highlight 1 > Expression Selector 1 > Amount
作者后面实际演示的逻辑就是:
Animation Amount 1控制高亮强度Highlight Position 1控制高亮扫到哪Falloff Radius 1控制边缘过渡宽度
第 6 步:设置高亮系统的基础状态
接着作者开始调这 3 个滑块。
6.1 Animation Amount 1
先把:
Animation Amount 1 = 100
这样被选中的字符就会完全吃到高亮效果。
6.2 Highlight Position 1
这个滑块是主控件,决定高亮扫到哪里。
作者演示时,把它从开头一路拖到结尾。
6.3 Based On
作者说明这里有两种用法:
Based On = Characters
适合逐字符扫过Based On = Words
适合逐词高亮
如果你切到 Words,一开始高亮可能消失,这是正常的,因为范围单位变了,要重新把 Highlight Position 1 调到更低的值。
6.4 Falloff Radius 1
作者演示:
- 小值时,高亮边界更硬
- 大值时,会形成渐变带
他还特意演示了一个很小值:
Falloff Radius = 2
这时高亮范围就会非常窄。
第 7 步:给高亮位置打关键帧
作者开始真正给扫光做动画。
操作路径:
- 在时间线大约 1.5 秒 的位置
- 给
Highlight Position 1打关键帧 - 回到开头
- 把起始值设成一个负数,让高亮从画面外开始扫进来
作者第一次设置的是:
- 起点:
-35 - 终点:
130
为什么终点不是 100?
因为他用了 Falloff Radius,为了让高亮完全扫出画面,终点要超过 100。
然后他做缓动:
- 选终点关键帧
- 按 F9
- 打开 Graph Editor
- 拉最后一个关键帧手柄,让结尾更顺
第 8 步:让文字显隐跟着高亮一起走
这是视频里最关键的一步之一。
作者不是单独再做一套显隐,而是把 Animation IN 的 Offset 直接绑定到高亮位置。
操作路径:
- 展开
Animation IN > Range Selector 1 - 找到
Offset - Alt/Option + 点击 Offset 的秒表
- 用 Pick Whip 拖到:
Effects > Highlight Position 1 > Slider
从画面里能看到这个表达式非常简单,就是:
effect("Highlight Position 1")("Slider")
这样一来:
- 高亮扫到哪里
- 文字就同时显到哪里
也就是“高亮带着文字出现”。
第 9 步:作者还演示了可加的附加属性
在 Highlight 1 这个 Animator 里,作者又试着加了:
Rotation- 也提到可以加
Opacity TrackingScalePosition
意思是这套系统本质上不是只能改颜色,
而是“高亮选中哪个字符/单词,那个范围就可以承载任意文字属性动画”。
作者在视频里试了 Rotation,所以你也可以这样做:
操作路径:
Highlight 1 > Add > Property > Rotation
然后直接改 Rotation 数值,就能得到更“花”的文字扫入效果。
B. 手动版:加会自动跟字变化的 Text Box(09:02 开始)
作者接下来把前面的标题再包一个胶囊框。
第 10 步:画一个矩形作为文字框
操作路径:
-
选择 Rectangle Tool
-
在文字外面画一个矩形
-
把形状层重命名为:
- Text Box
-
把它放到文字层下面
然后展开这个 Shape Layer 的内容。
第 11 步:设置文字框基础样式
作者在 Rectangle Path 1 和 Stroke 1 里做了这些设置。
11.1 圆角
在:
Rectangle Path 1 > Roundness
作者设置为:
- 40
11.2 描边
在:
Stroke 1 > Stroke Width
作者设置为:
- 2 px
颜色是深色描边。
11.3 填充改成渐变
作者把 Fill 改成:
- Linear Gradient
并拖动渐变起止点:
- 左端在矩形左侧
- 右端在矩形右侧
从画面能确认到的左侧颜色是接近:
- #00AFFF
右侧是偏粉色,但视频画面没停到足够清晰,具体十六进制值看不清,只能确认是柔和粉色。
第 12 步:给矩形 Size 加表达式,让宽高跟着文字变
这里作者在视频里实际展示了表达式内容,清晰度足够确认主体逻辑。
操作路径:
- 展开
Contents > Rectangle 1 > Rectangle Path 1 > Size - Alt/Option + 点击 Size 秒表
- 粘贴表达式
作者一开始粘的是无 padding 版本,画面中能确认到逻辑是:
myTextLayer = thisComp.layer("Text Layer");
textBounds = myTextLayer.sourceRectAtTime(time, true);
textBoundsAtTime = myTextLayer.sourceRectAtTime(3, true);
width = textBounds.width;
height = textBoundsAtTime.height;
[width, height]
这里有两个关键点:
12.1 文本层必须改名
作者明确说了,文本层名字必须改成:
- Text Layer
否则会报错。
12.2 为什么 width 和 height 取法不一样
作者这里是:
- 宽度用
time - 高度用固定时间
3
也就是:
- 宽度随当前可见文字变化
- 高度取完整状态的稳定高度
这样单行标题在 reveal 时会更稳,不容易出现高度抖动。
第 13 步:给文字框加 padding
接着作者直接修改刚才那段 Size 表达式,加入内边距。
最终按视频里加入的值是:
- 宽度
+120 - 高度
+80
也就是:
myTextLayer = thisComp.layer("Text Layer");
textBounds = myTextLayer.sourceRectAtTime(time, true);
textBoundsAtTime = myTextLayer.sourceRectAtTime(3, true);
width = textBounds.width + 120;
height = textBoundsAtTime.height + 80;
[width, height]
这一步以后,文字框大小就更舒服了。
第 14 步:给矩形内部位置加表达式,让它始终包住文字
作者特别强调:
表达式不要加到图层 Position。
要加到:
Contents > Rectangle 1 > Transform Rectangle 1 > Position
虽然视频里这一段完整代码没有像 Size 那样完整停留,但从作者讲解目的和最终效果,可以安全复刻为下面这段等效表达式:
myTextLayer = thisComp.layer("Text Layer");
r = myTextLayer.sourceRectAtTime(time, true);
[r.left + r.width/2, r.top + r.height/2]
这样矩形中心就会跟着当前文字可见区域走。
第 15 步:修正高亮起点,避免第一个词提前漏出来
作者在加完文字框之后发现一个问题:
因为之前 Highlight Position 1 起始关键帧设成了 -35,
第一个词会比他想要的更早显出来。
所以他回去改了这个关键帧。
操作路径:
- 选中文本层
- 按 U
- 找到
Highlight Position 1的起始关键帧 - 把它从
-35改成:
- 0
这是作者在这一套“带文字框”的最终修正值。
所以你要记住:
- 初次测试值:
-35 → 130 - 带文字框的最终修正起点:
0
C. 字幕场景说明:Submagic 不是必须(13:25 开始)
这一段作者做的是“字幕场景”的思路说明。
他把:
Falloff Radius改到 0Based On切到 Words
这样每次只高亮一个单词,更像社媒字幕。
但他也明确说了,这么手动逐词打关键帧会很耗时,
所以才引出 Submagic 自动做字幕。
所以这段你可以这样理解:
- 做标题效果:不需要 Submagic
- 做大量逐词自动字幕:Submagic 才有明显价值
D. 预设快做版:Text Highlights Preset(17:49 开始)
这一段是作者的“快速法”。
先说明清楚
这一段如果你要完全按他点法复刻,需要他的外部预设:
Text Highlights Preset
但视觉效果本身,你已经可以用前面的手动法做出来。
第 16 步:套用文字高亮预设
操作路径:
-
选中文本层
-
打开 Effects & Presets
-
搜索:
highlight
-
找到:
- Text Highlights Preset
-
直接拖到文本层上
加上以后,作者在 Effect Controls 里能直接看到一整套控件。
第 17 步:给 Highlight 1 做动画
在 Effect Controls 里,作者操作的是:
Text Highlight 1 > Highlight Position
他的做法:
- 起始关键帧:
0% - 到大约 1 秒 的位置
- 终点关键帧:
100%
然后:
- 按 U
- 选终点关键帧
- F9
- 进 Graph Editor
- 拉手柄
第 18 步:这个预设里还能直接添加很多动画属性
作者演示说可以在这个高亮预设里直接增加:
- Position
- Scale
- Rotation
- Opacity
- Fill Color
- Tracking
也就是预设只是帮你把“选中逻辑”搭好,
具体这个高亮范围里要发生什么变化,还是你自己加。
第 19 步:启用第二个高亮
作者在:
Text Highlight 2
里操作。
默认它是关闭的,作者说默认强度是 0。
要启用就把:
Highlight Intensity = 100%
这样就有第二条高亮轨道了。
第 20 步:把第二条高亮改成“按单词工作”
作者展开文本层内部 Animator,进入第二套高亮的表达式选择器,操作:
Based On = Words
然后把:
Falloff Radius = 0
接着拖 Highlight Position,直到只选中某个单词。
第 21 步:让文字 reveal 继续跟第一条高亮绑定
和手动版一样,作者再次做了这一步:
-
找到
Animation IN > Range Selector 1 > Offset -
Alt/Option 点击秒表
-
Pick Whip 到:
Text Highlight 1 > Highlight Position
也就是让文字显隐跟第一条高亮同步。
第 22 步:让第一条高亮消失、第二条高亮后出现
作者演示了两个强度关键帧动画。
第一条高亮
在某个时间点:
Highlight Intensity = 100%
到结尾:
Highlight Intensity = 0%
然后:
- 选两个关键帧
- F9
第二条高亮
作者想让第二个词晚一点出现,所以做:
-
某一帧设:
Highlight Intensity = 0%
-
往后几帧设:
Highlight Intensity = 100%
-
两个关键帧都 F9
-
在 Graph Editor 里再压一下节奏
第 23 步:作者给第二个高亮设置了一个明确值
这一步视频里说得很清楚。
为了只打到某个词,他把第二高亮的位置设成了:
- 12%
然后又:
- 改了 Fill Color
- 增加了 Tracking
但 Tracking 的具体数字在画面里不够清楚,
只能确认他是手动往上拖大了一些,不是默认值。
E. 预设快做版:Text Box preset(23:29 开始)
这一段同样是作者自己的外部预设。
第 24 步:加 Shape Layer 并套 Text Box preset
操作路径:
-
Layer > New > Shape Layer -
选中这个 Shape Layer
-
到 Effects & Presets
-
搜索:
text box
-
双击预设
这时会出现报错/未绑定文本层的状态。
第 25 步:在预设面板里指定要跟随的文字层
作者接着在预设的效果面板中操作:
Select Text Layer
然后从下拉菜单里选中对应文字层。
选完以后,文字框就会自动出现在文字下面,并随文字宽度变化。
第 26 步:调整 Text Box preset 的参数
作者在这个预设里演示了这些可调项:
Horizontal PaddingVertical Padding- 对齐位置
RoundnessText Box ColorStroke ThicknessStroke Color
其中作者演示了一个很圆的胶囊效果:
Roundness = 80
但其他滑块大多是拖动演示,画面里没有稳定停住足够久,不适合伪造一个精确数字。
所以这里你按作者思路调就行:
- 想更像药丸:Roundness 往大调
- 想更扁平:Vertical Padding 往小调
- 想更贴近现代 UI:Stroke 保持细一点
F. 发光描边版(25:23 开始)
这段是视频后面最值得复刻的一段之一。
第 27 步:复制原文字框,做独立 Outline 层
作者回到第一套手动做的文字框上。
操作路径:
-
选中原来的
Text Box -
Cmd/Ctrl + D
-
重命名为:
- Text Box Outline
-
先 Solo 这个图层,方便单独处理
第 28 步:把 Outline 层的填充去掉,只保留白色描边
作者的操作非常明确:
- 选中
Text Box Outline - 找到 Fill
- 按住 Alt/Option 去循环点击 Fill
- 一直点到 Fill 被关闭
然后:
- 把
Stroke Color改成白色
这样就只剩一圈白描边。
第 29 步:给描边加 Trim Paths
操作路径:
-
展开 Shape Layer 的
Contents -
点击 Add
-
选择:
- Trim Paths
第 30 步:做描边“绕框跑一圈”的动画
作者对 Trim Paths 里的三个量都动了:
EndStartOffset
30.1 End 动画
作者设置:
- 大约 2 秒 的位置:
End = 100% - 大约 0.5 秒 的位置:
End = 0%
这样描边就会从无到有画出来。
然后:
- 选
End的关键帧 - F9
- 进 Graph Editor
- 拉最后一个关键帧,让它“快速进入”
30.2 Start 动画
作者同时又加了一组:
- 起点:
Start = 0% - 后面某时刻:
Start = 100%
作用是把尾巴擦掉,让它变成一个“跑动的描边头”。
然后他做了和 End 相反的速度曲线:
- 第一帧缓一点
- 后面快一点
30.3 Offset 动画
作者又给 Offset 打关键帧。
第一次先设到:
- 180
后来觉得不够明显,又改成了:
- 270
并且把这组关键帧也 F9 了。
这样描边在沿着框跑的时候,还会有一点旋转感。
第 31 步:给描边头尾做 Taper
这一步视频里数值很明确。
在:
Stroke > Taper
里设置:
Start Length = 75%End Length = 25%
这样描边头尾会变尖,不是死板的一根线。
第 32 步:加 Glow,而且是 3 层 Glow
作者的做法是:
-
到 Effects & Presets
-
搜索:
glow
-
把 Glow 拖到
Text Box Outline
然后不是只留一个 Glow,而是继续复制:
- 第一个 Glow:保留默认
- 第二个 Glow:把
Radius改到大约 70 - 第三个 Glow:把
Radius改到大约 200
所以最终是3 层 Glow 叠加。
第 33 步:把 Glow 限制在文字框内部
作者说的是用 Track Matte。
操作意图是:
- 让 Glow 只在 Text Box 的范围内出现
- 不要把黑背景也照亮
他的说法是:
- 在
Text Box Outline的 Track Matte 里选Text Box
然后别忘了把原 Text Box 重新显示出来。
第 34 步:把 Outline 的透明度压低一点
作者最后还按了:
- T
把 Outline 图层的透明度改成:
- 50%
这样发光不会太冲。
三、视频里哪些地方是“外部依赖”
这个你一定要分清。
不需要外部订阅也能做
这些都能纯 AE 做:
- 标题文字 reveal
- 高亮扫过
- 自动变宽的文字框
- 发光描边框
需要作者外部文件才能“按同样快捷流程做”
不是 Submagic,而是:
Text Highlights PresetText Box preset
需要 Submagic 的,只有这段
- AI 自动生成字幕
- 自动逐词高亮字幕
- 自动翻译字幕
- 快速社媒样式字幕输出
四、你替换素材时,哪些数据必须改
这是最重要的实战部分。
1)换文案长度时,必须改这些
文案更长
优先改:
- 字号
Highlight Position 1的结束值- 文字框
width padding
建议:
- 如果还在用 falloff,结尾别只停 100,通常要去到 110~140
- 作者示例用了 130
- 文案越长、falloff 越大,结尾越要超过 100
文案更短
优先改:
Falloff Radius 1- 文字框的
+120 / +80
短字如果还用大 falloff,会显得一坨糊光。
短标题建议把 Falloff Radius 调小。
2)换字体、字号、字重时,必须改这些
作者示例是:
- 字号 58 px
- 描边 2 px
- Roundness 40
- Padding:宽 +120,高 +80
所以你一旦换字体,下面这几个必须重调:
Stroke WidthRoundness- Glow
Radius - Padding
一个很好用的经验比例
以作者这组参数为基准:
- 宽 padding 大约是字体大小的 2 倍
- 高 padding 大约是字体大小的 1.3~1.4 倍
- 描边粗细 大约是字体大小的 3%~4%
也就是说:
- 58 px 字体 → 2 px 描边,很合理
- 100 px 字体 → 先从 3~4 px 描边试起
3)换成中文时,必须注意 Based On
英文里作者常切:
Based On = Words
但中文默认不会像英文那样天然按单词拆分。
所以中文有两种更稳的做法:
做法 A
直接用:
Based On = Characters
适合逐字高亮。
做法 B
如果你想按词组高亮,就手动在词组之间加空格,
让 AE 把它识别成“word”单位。
4)换成多行文案时,必须改这些
如果你的标题不再是单行,而是两行或三行:
必须检查:
sourceRectAtTime()取值是否 still 稳定height + 80够不够Roundness- 行距
多行时最容易出问题的是:
- 文字框高度太紧
- reveal 过程中 box 上下跳动
这时建议:
height padding比单行更大一些- 如果抖动明显,把 position/size 的时间采样改成完整显示时刻,而不是
time
5)换竖屏或别的画幅时,必须改这些
如果从 16:9 改成 9:16:
必须改:
- 文本层整体位置
- 文字框位置
- Glow 半径
- 字号
作者的 Glow 半径:
- 70
- 200
这是针对 1920×1080 单行标题 比较合适的量级。
到了竖屏里,通常要缩一点,不然会太炸。
你可以先试:
- 第二层 Glow:35~50
- 第三层 Glow:100~140
6)背景亮度变了时,必须改这些
如果背景不是黑底,而是浅底、彩色底、视频底:
优先改:
- 文字颜色
- 高亮颜色
- 文字框渐变颜色
- Outline 透明度
- Glow 强度
作者最后把 Outline 透明度压到:
- 50%
这一步在亮背景上尤其重要,不然太刺眼。
7)如果你要做“社媒字幕”,而不是标题
就按作者在字幕段里的思路:
Based On = WordsFalloff Radius = 0- 每个词单独切
- 高亮位置按语音节奏打关键帧
但这套手动做很费时间。
所以如果你是批量做短视频字幕,Submagic 才开始有意义。
五、我建议你真正照着做时,用哪一套
最稳、最不依赖外部文件的方案
直接用这两段:
- 手动高亮系统
- 手动自动文字框
- 发光描边框
这三段就已经能做出视频里最值钱的视觉效果。
只有在你想省时间时,才考虑外部东西
- 做自动字幕:Submagic
- 做 AE 内一键套用:作者的 Highlight / Text Box 预设
六、给你一个最实用的复刻顺序
你第一次复刻时,不要一口气全做。
按这个顺序最稳:
- 先只做白字标题
- 做
Animation IN - 做
Highlight 1 + 3 个 Slider - 把
Offset绑定到Highlight Position 1 - 跑通一次扫光
- 再加手动画的 Text Box
- 再给 Text Box 加自动尺寸表达式
- 最后再做 Outline + Trim Paths + Glow
这样最不容易乱。
如果你愿意,我下一条可以直接把上面内容整理成一份 “AE 可照抄操作清单版” ,我会写成这种格式:
- 第几步点哪里
- 当前应该看到什么
- 应该输入什么数值
- 哪一步容易出错
- 出错后怎么排查
这样你就可以一边开 AE 一边跟着做。