Плашки для текста с помощью выражений (expression) в After Effects.

Начало работы

Создаем новый текстовый слой с помощью двойного клика по Text Tool, и выравним текст в панели Paragraph по центру.

Создаем новый шейповый слой rectangle, с помощью двойного клика по инструменту Rectangle Tool.

Переместим шейповый слой ниже текстового на таймлайне. И выполним заливку шейпового слоя.

Всегда переименовывайте ваши слои, чтобы сохранить слои в организованном порядке и упростить выражения. Шейповый слой переименуем в «box», а текстовый слой в «text».

Итоговые выражения

Выражение (expression) для shape layer(box) > rectangle 1 > rectangle path 1 >  size:

var mytext = thisComp.layer("text");
[ mytext.sourceRectAtTime().width, mytext.sourceRectAtTime().height]

Выражение (expression) для shape layer(box) > rectangle 1 > rectangle path 1 >  position:

var mytextY= thisComp.layer("text").sourceRectAtTime().top;
var mytextX= thisComp.layer("text").sourceRectAtTime().left;
var boxsize=content("box").content("Rectangle Path 1").size;
[mytextX+boxsize[0]/2, mytextY+boxsize[1]/2]

Анимация текста

Анимируем текст с помощью аниматоров, с использованием Range Selector, для параметра Start у Range Selector, выражение:

var cps = 20 ;
var tmax = sourcetext.length / cps ;
linear (time, 0, tmax, 0 , 100)

Модификация шейпового слоя

Ниже Rectangle path 1, внутри группы, добавим Offset Path 1, с нужным значением Amount.

Ниже Offset Path 1, внутри группы, будет стоять Fill 1 для заливки.

Ниже Fill 1, внутри группы, будет стоять Stroke 2 с включенным Dashes и белым цветом.

Ниже Stroke 2, внутри группы, будет стоять Stroke 1 с тем же цветом что и у Fill.

Chat bubble

Создаем новый шейповый слой polystar shape, с помощью двойного клика по инструменту Star Tool.

В параметрах Polystar Path 1: Type шейпа выберем polygon, настроим размер и rotation на -30.

Ниже группы Polystar 1, добавим группу Rectangle 1, в нем Rectangle Path 1 и ниже Offset path 1 с Amount: 20.

Ниже группы Rectangle 1 добавим Fill.

Добавим выражение для shape layer > Polystar 1 > Polystar Path 1 > position:

r=content("Polystar 1").content("Polystar Path 1").outerRadius/2;
s=content("Rectangle 1").content("Rectangle Path 1").size;
o=content("Rectangle 1").content("Offset Paths 1").amount;
p=content("Rectangle 1").content("Rectangle Path 1").position;
x=r+s[0]/2+o;
[x,p[1]]

Выражение (expression) для shape layer > rectangle 1 > rectangle path 1 >  size:

var mytext = thisComp.layer("text");
[ mytext.sourceRectAtTime().width, mytext.sourceRectAtTime().height]

Выражение (expression) для shape layer > rectangle 1 > rectangle path 1 >  position:

var mytextY= thisComp.layer("text").sourceRectAtTime().top;
var mytextX= thisComp.layer("text").sourceRectAtTime().left;
var boxsize=content("Rectangle 1").content("Rectangle Path 1").size;
[mytextX+boxsize[0]/2, mytextY+boxsize[1]/2]

Добавим на шейповый слой стиль слоя Stroke.

Источник: aexpr.wordpress.com

Полноценный видеокурс по After Effects и Моушн Дизайну

Узнать подробнее...