Руководство пользователя Отмена

Использование выражений для изменения свойств текста и доступа к ним

Изменение стилей текста и свойств текста с помощью элементов управления выражениями.

Используйте выражения для управления стилем текста в любом текстовом выражении или в шаблонах анимационного дизайна. Некоторые вещи, которые вы можете сделать с выражениями:

  • Связывайте несколько заголовков и обновляйте их стили одновременно (очень полезно для разработки заголовков).
  • Синхронизируйте шрифт, размер и стили в нескольких текстовых слоях.
  • Внесите глобальные изменения в свойства текста.
  • Задайте атрибуты стиля отдельных символов в текстовом слое.

После их установки для текстового слоя можно ссылаться на свойства этого слоя, чтобы быстро применять изменения ко всей композиции. В выражениях After Effects используются свойства для чтения (получения) значений стиля текста и методы функций для записи (установки) их внутри движка выражений. Это позволяет связывать стили текста в текстовых слоях либо настраивать элементы управления для их анимации или использования в шаблоне анимационного дизайна.

Перед началом использования выражений для редактирования свойств текста

  1. Установите для Движка выражений значение «Javascript», выбрав Настройки проекта > Выражения > Движок выражений > Javascript.
  2. Добавление выражения в свойство Исходный текст текстового слоя.
  3. Во всплывающем меню Язык выражений выберите Текст > Свойства > Свойства текста или Текст > Стили.

Доступные текстовые атрибуты

Следующие атрибуты стиля текста можно прочитать и задать с помощью объекта style:

  • Шрифт
  • Размер шрифта
  • Псевдополужирный
  • Искусственный курсив
  • Все прописные
  • Малые прописные
  • Трекинг
  • Интерлиньяж
  • Автоинтерлиньяж
  • Отклонение от базовой линии
  • Заполнить (включить/выключить)
  • Цвет заливки
  • Обводка (включить/выключить)
  • Цвет обводки
  • Ширина обводки
  • Набор цифр
  • Масштабирование
  • Кернинг
  • Цумэ
  • Направление базовой линии
  • Параметр базовой линии
Во всплывающем меню «Язык выражений» перечислены все свойства текста на выбор.
Во всплывающем меню «Язык выражений» перечислены все свойства текста, включая те, которые в настоящее время доступны в After Effects.

Свойство Исходный текст текстового слоя преобразовывается выражениями в виде строки JavaScript. Сам текст можно прочитать с помощью sourceText, но он должен быть задан для объекта style с помощью метода setText, если атрибуты стиля изменяются. Просмотрите несколько примеров.

Выражения для текстовых слоев с абзацами

Начать новую строку текста

Для указания начала новой строки текста в строковом выражении можно использовать комбинацию символов \r. Например, чтобы скопировать исходный текст из одного слоя в тот же самый слой и повторить эту операцию для всех прописных символов в новой строке, используйте следующее выражение:

text.sourceText + “\r” + text.sourceText.toUpperCase()
text.sourceText + “\r” + text.sourceText.toUpperCase()
  text.sourceText + “\r” + text.sourceText.toUpperCase()

Доступные атрибуты абзаца

Кроме атрибутов стиля текста, также есть атрибуты абзацев. Их можно применять только ко всему текстовому слою. Атрибуты абзаца доступны только в After Effects.

  • Направление
  • Многострочный компоновщик
  • Отступ первой строки
  • Выключка
  • Тип интерлиньяжа
  • Левое поле
  • Правое поле
  • Пробел после
  • Пробел до
  • Зависание знаков пунктуации на латинице
Во всплывающем меню «Язык выражений» перечислены все свойства абзаца, включая те, которые в настоящее время доступны в бета-версии After Effects.
Во всплывающем меню «Язык выражений» перечислены все свойства абзаца, включенные в After Effects.

Меню выражений и шрифты PostScript

При обращении к шрифтам в выражениях они должны использовать специальное «системное имя» (или аналогичное). Рекомендуется вставить это специальное имя из диалогового окна Текст > Шрифт > Выбрать шрифт, чтобы избежать ошибок выражения.

  • Откройте всплывающее меню Язык выражений и выберите Текст > Шрифт. Откроется диалоговое окно с раскрываемыми меню для выбора шрифта и шрифта для вставки в выражение.
Меню «Шрифт»
В меню «Язык выражений» выберите гарнитуру и шрифт, которые необходимо вставить в выражение.

Синхронизация шрифтов

Шрифты, на которые ссылаются только в Редакторе выражений, не записываются как шрифты, используемые проектом. Чтобы убедиться, что все шрифты, упомянутые в Редакторе выражений, будут автоматически синхронизироваться или заполнять диалоговое окно Разрешить шрифты, используйте все эти шрифты в слое, даже если этот источник слоя скрыт.

Объект style

Все свойства стилей для текстового слоя существуют в объекте style, доступ к которому осуществляется в свойстве Исходный текст с помощью указанных ниже действий.

// Использование всего пути к свойству Source Text
text.sourceText.style
// Использование общего имени текущего свойства
thisProperty.style
// Использование всего пути к свойству Source Text text.sourceText.style // Использование общего имени текущего свойства thisProperty.style
// Использование всего пути к свойству Source Text 
text.sourceText.style 
 
// Использование общего имени текущего свойства 
thisProperty.style

Использование стиля само по себе аналогично использованию любого из двух приведенных выше примеров, но это может сбивать с толку, если атрибуты стиля из нескольких текстовых слоев объединяются.

Атрибуты стилей других текстовых слоев также можно прочитать. Используйте лассо выбора, чтобы создать ссылку на другой текстовый слой в начале первого примера, показанного выше.

// Доступ к объекту стиля определенного текстового слоя
thisCompayer(“Other Layer Name”)extourceTexttyle;
// Доступ к объекту стиля определенного текстового слоя thisCompayer(“Other Layer Name”)extourceTexttyle;
// Доступ к объекту стиля определенного текстового слоя 
 
thisCompayer(“Other Layer Name”)extourceTexttyle;

Атрибуты стиля отдельных символов в текстовом слое

Кроме использования текстовых выражений с целью установки атрибутов стиля для всего текстового слоя, можно также задать атрибуты стиля для отдельных символов в слое. Преимуществом этого посимвольного элемента управления является автоматическое изменение размера текста, например при масштабировании букв, использовании надстрочных индексов или другого шрифта, как и при использовании стилей частей строки с панели Символ.

Примеры

Изменение шрифта для определенных слов

textourceTexttyle
etFont(“Montserrat-Light”)
etFont(“Gigantic”, 0, 6)etFont(“Gigantic”, 10, 6)etFont(“Gigantic”, 20)
textourceTexttyle etFont(“Montserrat-Light”) etFont(“Gigantic”, 0, 6)etFont(“Gigantic”, 10, 6)etFont(“Gigantic”, 20)
textourceTexttyle
etFont(“Montserrat-Light”) 
etFont(“Gigantic”, 0, 6)etFont(“Gigantic”, 10, 6)etFont(“Gigantic”, 20)
 

Установить для первой строки текстового слоя полужирный и более крупный шрифт

text.sourceText.style.setFontSize(100, 0, 30).setFauxBold(true, 0, 30)
text.sourceText.style.setFontSize(100, 0, 30).setFauxBold(true, 0, 30)
 text.sourceText.style.setFontSize(100, 0, 30).setFauxBold(true, 0, 30) 

Задать надстрочный индекс для символов

Чтобы использовать строку, добавьте текстовый слой с текстом «Первое и второе место» и примените следующее к Исходному тексту.

textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2)
textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2)
textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2) 

Объединение стиля и исходного текста

текст и стиль
Объединение стиля и исходного текста

Чтобы вернуть значения стиля и фактического исходного текста в один момент времени, необходимо объединить функции getStyleAt и setText. Ниже приведены два примера того, как записать это выражение.

// Чтобы вернуть значения как стиля, так и фактического исходного текста во времени (сокращенная рука) var sourceTextProperty = thisComp.layer(“MAIN TEXT”).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Чтобы вернуть значения как стиля, так и фактического исходного текста во времени (сокращенная рука) var sourceTextProperty = thisComp.layer(“MAIN TEXT”).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Чтобы вернуть значения как стиля, так и фактического исходного текста во времени (сокращенная рука) var sourceTextProperty = thisComp.layer(“MAIN TEXT”).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Для возврата значений как стиля, так и фактического исходного текста предыдущего слоя в порядке наложения слоев var sourceTextProperty = thisComp.layer(index - 1).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Для возврата значений как стиля, так и фактического исходного текста предыдущего слоя в порядке наложения слоев var sourceTextProperty = thisComp.layer(index - 1).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
// Для возврата значений как стиля, так и фактического исходного текста предыдущего слоя в порядке наложения слоев var sourceTextProperty = thisComp.layer(index - 1).text.sourceText; var newStyle = sourceTextProperty.getStyleAt(0,0); newStyle.setText(sourceTextProperty);
шрифты раскрывающегося списка
Связывание шрифтов или стилей с раскрывающимся меню

Раскрывающиеся меню можно использовать для управления стилями текста, например для блокировки текстовых слоев определенными шрифтами. Это полезно для рекомендаций по брендам, шаблонов, включая шаблоны анимационного дизайна, и многого другого.

// Чтобы заблокировать текстовый слой для определенных шрифтов с помощью dropdown Menu Control var dropDownMenu = thisComp.layer(“LayerName”).effect(“Dropdown Menu Control”)(“Menu”); switch (dropDownMenu.value) { case 1 : text.sourceText.style.setFont(“Georgia”); break; case 2 : text.sourceText.style.setFont(“Impact”); break; по умолчанию : text.sourceText.style.setFont(“Tahoma”); }
// Чтобы заблокировать текстовый слой для определенных шрифтов с помощью dropdown Menu Control var dropDownMenu = thisComp.layer(“LayerName”).effect(“Dropdown Menu Control”)(“Menu”); switch (dropDownMenu.value) { case 1 : text.sourceText.style.setFont(“Georgia”); break; case 2 : text.sourceText.style.setFont(“Impact”); break; по умолчанию : text.sourceText.style.setFont(“Tahoma”); }
// Чтобы заблокировать текстовый слой для определенных шрифтов с помощью dropdown Menu Control var dropDownMenu = thisComp.layer(“LayerName”).effect(“Dropdown Menu Control”)(“Menu”); switch (dropDownMenu.value) { case 1 : text.sourceText.style.setFont(“Georgia”); break; case 2 : text.sourceText.style.setFont(“Impact”); break; по умолчанию : text.sourceText.style.setFont(“Tahoma”); }

Основной текстовый слой

основной текстовый слой
Получение свойств текста из “Text Layer 1”, но переопределение размера шрифта и цвета заливки

Свяжите несколько текстовых слоев с основным контроллером шрифтов, чтобы управлять стилем текста нескольких слоев одновременно. Создайте два текстовых слоя и вставьте указанное ниже выражение в исходный текст одного из них.

// Чтобы получить все свойства текста из текстового слоя
thisCompayer(“Text Layer 1)extourceTexttyle;
// Чтобы получить все свойства текста из текстового слоя thisCompayer(“Text Layer 1”)extourceTexttyle;
// Чтобы получить все свойства текста из текстового слоя 
 
thisCompayer(“Text Layer 1”)extourceTexttyle;

Можно получить стиль из текстового слоя, но переопределить определенные свойства текста, добавив значения с помощью функций set. Ниже приведены два примера использования цвета заливки и размера шрифта.

// Получить все свойства текста из “Text Layer 1”, но переопределить цвет заливки и размер шрифта с жестко закодированными значениями var newStyle = thisComp.layer(“Text Layer 1”).text.sourceText.style; newStyle.setFillColor(hexToRgb(“FF0000”)).setFontSize(100);
// Получить все свойства текста из “Text Layer 1”, но переопределить цвет заливки и размер шрифта с жестко закодированными значениями var newStyle = thisComp.layer(“Text Layer 1”).text.sourceText.style; newStyle.setFillColor(hexToRgb(“FF0000”)).setFontSize(100);
// Получить все свойства текста из “Text Layer 1”, но переопределить цвет заливки и размер шрифта с жестко закодированными значениями var newStyle = thisComp.layer(“Text Layer 1”).text.sourceText.style; newStyle.setFillColor(hexToRgb(“FF0000”)).setFontSize(100);
// Чтобы получить все свойства текста из “Text Layer 1”, но переопределить цвет заливки и размер шрифта с текущими текстовыми свойствами слоя var newStyle = thisComp.layer(“Text Layer 1”).text.sourceText.style; var currentFillColor = thisProperty.style.fillColor; var currentFontSize = thisProperty.style.fontSize; newStyle.setFillColor(currentFillColor).setFontSize(currentFontSize);
// Чтобы получить все свойства текста из “Text Layer 1”, но переопределить цвет заливки и размер шрифта с текущими текстовыми свойствами слоя var newStyle = thisComp.layer(“Text Layer 1”).text.sourceText.style; var currentFillColor = thisProperty.style.fillColor; var currentFontSize = thisProperty.style.fontSize; newStyle.setFillColor(currentFillColor).setFontSize(currentFontSize);
// Чтобы получить все свойства текста из “Text Layer 1”, но переопределить цвет заливки и размер шрифта с текущими текстовыми свойствами слоя var newStyle = thisComp.layer(“Text Layer 1”).text.sourceText.style; var currentFillColor = thisProperty.style.fillColor; var currentFontSize = thisProperty.style.fontSize; newStyle.setFillColor(currentFillColor).setFontSize(currentFontSize);

Примеры

Ниже приведены примеры получения доступа к значениям свойств текста в выражениях и их использования.

Шрифт

Ниже приведены примеры доступа к таким параметрам текстового слоя, как Шрифт, Размер шрифта, Псевдополужирный, Псевдокурсивный, Трекинг и Интерлиньяж.

// Чтобы вернуть имя шрифта для самого текстового слоя
textourceTexttyleont;
// Чтобы вернуть имя шрифта, используемого другим текстовым слоем{{n} ar otherLayer = thisCompayer(“Имя другого слоя”
otherLayerextourceTexttyleont;
// Чтобы вернуть значение размера шрифта для самого текстового слоя
textourceTexttyleontSize;
// чтобы вернуть значение размера шрифта для другого текстового слоя
var otherLayer = thisCompayer(“Имя другого слоя”
otherLayerextourceTexttyleontSize;
// Чтобы вернуть логическое значение значение того, является ли текст слоя Faux Bold или нет (True или False)
textourceTexttylesFauxBold;
// Чтобы вернуть логическое значение того, является ли текст слоя text Faux Italic или нет (True или False)
textourceTexttylesFauxItalic;
// Чтобы вернуть значение отслеживания текстового слоя в виде числа{{ n}extourceTexttyleracking;
// Чтобы вернуть значение интерлиньяжа текстового слоя в виде nu mber
textourceTexttyleeading;
// Чтобы вернуть имя шрифта для самого текстового слоя textourceTexttyleont; // Чтобы вернуть имя шрифта, используемого другим текстовым слоем{{n} ar otherLayer = thisCompayer(“Имя другого слоя” otherLayerextourceTexttyleont; // Чтобы вернуть значение размера шрифта для самого текстового слоя textourceTexttyleontSize; // чтобы вернуть значение размера шрифта для другого текстового слоя var otherLayer = thisCompayer(“Имя другого слоя” otherLayerextourceTexttyleontSize; // Чтобы вернуть логическое значение значение того, является ли текст слоя Faux Bold или нет (True или False) textourceTexttylesFauxBold; // Чтобы вернуть логическое значение того, является ли текст слоя text Faux Italic или нет (True или False) textourceTexttylesFauxItalic; // Чтобы вернуть значение отслеживания текстового слоя в виде числа{{ n}extourceTexttyleracking; // Чтобы вернуть значение интерлиньяжа текстового слоя в виде nu mber textourceTexttyleeading;
// Чтобы вернуть имя шрифта для самого текстового слоя
textourceTexttyleont;
 // Чтобы вернуть имя шрифта, используемого другим текстовым слоем{{n} ar otherLayer = thisCompayer(“Имя другого слоя”

otherLayerextourceTexttyleont;

// Чтобы вернуть значение размера шрифта для самого текстового слоя
textourceTexttyleontSize;

// чтобы вернуть значение размера шрифта для другого текстового слоя
 var otherLayer = thisCompayer(“Имя другого слоя”

otherLayerextourceTexttyleontSize;

// Чтобы вернуть логическое значение значение того, является ли текст слоя Faux Bold или нет (True или False)
textourceTexttylesFauxBold;

// Чтобы вернуть логическое значение того, является ли текст слоя text Faux Italic или нет (True или False)
textourceTexttylesFauxItalic;

// Чтобы вернуть значение отслеживания текстового слоя в виде числа{{ n}extourceTexttyleracking;

// Чтобы вернуть значение интерлиньяжа текстового слоя в виде nu mber
textourceTexttyleeading;

Заливка

Ниже приведены примеры доступа к таким параметрам текстового слоя, как Заливка и Цвет заливки.

// Чтобы вернуть логическое значение того, применена ли к тексту слоя заливка (True или False)
textourceTexttylepplyFill;
// Чтобы вернуть значение цвета заливки текстового слоя
// По умолчанию возвращается массив значений RGB по шкале от 0 до 1,0
textourceTexttyleillColor;
// Установите цвет заливки текстового слоя с помощью setApplyFill и setFillColor
// Значения setFillColor определяются как массив RGB по шкале от 0 до 1,0
var newStyle = styleetApplyFill(true
newStyleetFillColor([1.0, 1.0, 1.0]
// Установите цвет заливки текстового слоя, заменив массив RGB от 0 до 1,0 на hexToRGB, чтобы определить значения цвета с помощью шестнадцатеричных значений
var newStyle = styleetApplyFill(true
newStyleetFillColor(hexToRgb(“FFFFFF”)
// Чтобы вернуть логическое значение того, применена ли к тексту слоя заливка (True или False) textourceTexttylepplyFill; // Чтобы вернуть значение цвета заливки текстового слоя // По умолчанию возвращается массив значений RGB по шкале от 0 до 1,0 textourceTexttyleillColor; // Установите цвет заливки текстового слоя с помощью setApplyFill и setFillColor // Значения setFillColor определяются как массив RGB по шкале от 0 до 1,0 var newStyle = styleetApplyFill(true newStyleetFillColor([1.0, 1.0, 1.0] // Установите цвет заливки текстового слоя, заменив массив RGB от 0 до 1,0 на hexToRGB, чтобы определить значения цвета с помощью шестнадцатеричных значений var newStyle = styleetApplyFill(true newStyleetFillColor(hexToRgb(“FFFFFF”)
// Чтобы вернуть логическое значение того, применена ли к тексту слоя заливка (True или False) 
textourceTexttylepplyFill; 
 
// Чтобы вернуть значение цвета заливки текстового слоя
// По умолчанию возвращается массив значений RGB по шкале от 0 до 1,0 
textourceTexttyleillColor; 
 
// Установите цвет заливки текстового слоя с помощью setApplyFill и setFillColor 
// Значения setFillColor определяются как массив RGB по шкале от 0 до 1,0 
var newStyle = styleetApplyFill(true 
 
newStyleetFillColor([1.0, 1.0, 1.0] 
 
// Установите цвет заливки текстового слоя, заменив массив RGB от 0 до 1,0 на hexToRGB, чтобы определить значения цвета с помощью шестнадцатеричных значений 
var newStyle = styleetApplyFill(true 
 
newStyleetFillColor(hexToRgb(“FFFFFF”)

Заполнение значений RGB

// Чтобы вернуть красное (R) значение цвета заливки
text.sourceText.style.fillColor[0];
// Чтобы вернуть красное (R) значение цвета заливки text.sourceText.style.fillColor[0];
// Чтобы вернуть красное (R) значение цвета заливки 
 
text.sourceText.style.fillColor[0];
Примечание.

Для возврата значений цвета заливки для R, G или B текстового слоя, добавьте в скобки 0, 1 или 2 соответственно.

Обводка

Ниже приведены примеры доступа к таким параметрам текстового слоя, как Обводка, Цвет обводки и Ширина обводки.

// Чтобы вернуть логическое значение того, применена ли к тексту слоя обводка (True или False)
textourceTexttylepplyStroke;
// Чтобы вернуть значение цвета обводки текстового слоя
// По умолчанию возвращается массив значений RGB по шкале от 0 до 1,0
textourceTexttyletrokeColor;
// Задайте цвет обводки текстового слоя с помощью setApplyStroke и setStrokeColor
// Значения setStrokeColor определяются как массив RGB по шкале от 0 до 1,0
var newStyle = styleetApplyStroke(true
newStyleetStrokeColor([1.0, 0.0, 0.0]
// Задайте цвет обводки текстового слоя, заменив массив RGB от 0 до 1,0 на hexToRGB для определения значений цвета с помощью шестнадцатеричных значений
var newStyle = styleetApplyStroke(true
newStyleetStrokeColor(hexToRgb(“FF0000”)
// Чтобы вернуть значение ширины обводки текстового слоя в виде числа
textourceTexttyletrokeWidth;
// Чтобы вернуть логическое значение того, применена ли к тексту слоя обводка (True или False) textourceTexttylepplyStroke; // Чтобы вернуть значение цвета обводки текстового слоя // По умолчанию возвращается массив значений RGB по шкале от 0 до 1,0 textourceTexttyletrokeColor; // Задайте цвет обводки текстового слоя с помощью setApplyStroke и setStrokeColor // Значения setStrokeColor определяются как массив RGB по шкале от 0 до 1,0 var newStyle = styleetApplyStroke(true newStyleetStrokeColor([1.0, 0.0, 0.0] // Задайте цвет обводки текстового слоя, заменив массив RGB от 0 до 1,0 на hexToRGB для определения значений цвета с помощью шестнадцатеричных значений var newStyle = styleetApplyStroke(true newStyleetStrokeColor(hexToRgb(“FF0000”) // Чтобы вернуть значение ширины обводки текстового слоя в виде числа textourceTexttyletrokeWidth;
// Чтобы вернуть логическое значение того, применена ли к тексту слоя обводка (True или False) 
textourceTexttylepplyStroke; 
 
// Чтобы вернуть значение цвета обводки текстового слоя 
// По умолчанию возвращается массив значений RGB по шкале от 0 до 1,0 
textourceTexttyletrokeColor; 
 
// Задайте цвет обводки текстового слоя с помощью setApplyStroke и setStrokeColor 
// Значения setStrokeColor определяются как массив RGB по шкале от 0 до 1,0 
var newStyle = styleetApplyStroke(true 
 
newStyleetStrokeColor([1.0, 0.0, 0.0] 
 
// Задайте цвет обводки текстового слоя, заменив массив RGB от 0 до 1,0 на hexToRGB для определения значений цвета с помощью шестнадцатеричных значений 
var newStyle = styleetApplyStroke(true 
 
newStyleetStrokeColor(hexToRgb(“FF0000”) 
 
// Чтобы вернуть значение ширины обводки текстового слоя в виде числа 
textourceTexttyletrokeWidth;

Значения RGB обводки

// Чтобы вернуть зеленое (G) значение цвета обводки
text.sourceText.style.strokeColor[1];
// Чтобы вернуть зеленое (G) значение цвета обводки text.sourceText.style.strokeColor[1];
// Чтобы вернуть зеленое (G) значение цвета обводки 
 
text.sourceText.style.strokeColor[1];
Примечание.

Для возврата значений цвета обводки для R, G или B текстового слоя, добавьте в скобки 0, 1 или 2 соответственно.

Функция getStyleAt

Используйте функцию get для возврата значений стиля определенного символа в необходимое время. В качестве index нужно указывать число, являющееся индексом буквы или символа, значение стиля которого необходимо получить. atTime также должно быть числом, указывающим время в композиции, из которого можно получить стиль, если стиль является ключевым кадром и меняется с течением времени.

text.sourceText.getStyleAt(index, atTime);
text.sourceText.getStyleAt(index, atTime);
text.sourceText.getStyleAt(index, atTime);
Примечание.

Использование text.sourceText.style аналогично использованию text.sourceText.getStyleAt(0,0).

// Получает стиль первого символа в начале временной шкалы
text.sourceText.getStyleAt(0,0);
// Получает стиль первого символа в начале временной шкалы text.sourceText.getStyleAt(0,0);
// Получает стиль первого символа в начале временной шкалы

text.sourceText.getStyleAt(0,0);

Функции «Set»

Дополнительные функции set, которые могут использоваться по отдельности или в сочетании друг с другом для управления стилями в слоях. Каждая из приведенных функций вызывается для объекта style свойства исходного текста.

// Установка Arial в качестве используемого шрифта
styleetFont(“ArialMT”)
// Изменение размера шрифта на 80
styleetFontSize(80
// Включение псевдополужирности с помощью логического значения
styleetFauxBold(true)
// Включение псевдокурсива с помощью логического значения
styleetFauxItalics(true)
// Включение всех прописных с помощью логического значения
styleetAllCaps(true)
// Включение малых прописных с помощью логического значения
styleetSmallCaps(true)
// Установка числового значения отслеживания
styleetTracking(10
// Установка числового значения интерлиньяжа
styleetLeading(10
// Включение автоинтерлиньяжа с помощью логического значения
styleetAutoLeading(true
// Установка числового значения смещения базовой линии
styleetBaselineShift(10
// Установка числового значения ширины обводки
styleetStrokeWidth(10
// Установка для первой строки текстового слоя полужирного и более крупного шрифта
textourceTexttyleetFontSize(100, 0, 30)etFauxBold(true, 0, 30)
// Установка надстрочного индекса для символов
textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2)
// Установка Arial в качестве используемого шрифта styleetFont(“ArialMT”) // Изменение размера шрифта на 80 styleetFontSize(80 // Включение псевдополужирности с помощью логического значения styleetFauxBold(true) // Включение псевдокурсива с помощью логического значения styleetFauxItalics(true) // Включение всех прописных с помощью логического значения styleetAllCaps(true) // Включение малых прописных с помощью логического значения styleetSmallCaps(true) // Установка числового значения отслеживания styleetTracking(10 // Установка числового значения интерлиньяжа styleetLeading(10 // Включение автоинтерлиньяжа с помощью логического значения styleetAutoLeading(true // Установка числового значения смещения базовой линии styleetBaselineShift(10 // Установка числового значения ширины обводки styleetStrokeWidth(10 // Установка для первой строки текстового слоя полужирного и более крупного шрифта textourceTexttyleetFontSize(100, 0, 30)etFauxBold(true, 0, 30) // Установка надстрочного индекса для символов textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2)
// Установка Arial в качестве используемого шрифта 
styleetFont(“ArialMT”) 
 
// Изменение размера шрифта на 80 
styleetFontSize(80 
 
// Включение псевдополужирности с помощью логического значения 
styleetFauxBold(true) 
 
// Включение псевдокурсива с помощью логического значения 
styleetFauxItalics(true) 
 
// Включение всех прописных с помощью логического значения 
styleetAllCaps(true) 
 
// Включение малых прописных с помощью логического значения 
styleetSmallCaps(true) 
 
// Установка числового значения отслеживания 
styleetTracking(10 
 
// Установка числового значения интерлиньяжа 
styleetLeading(10 
 
// Включение автоинтерлиньяжа с помощью логического значения 
styleetAutoLeading(true
 
// Установка числового значения смещения базовой линии 
styleetBaselineShift(10 
 
// Установка числового значения ширины обводки 
styleetStrokeWidth(10

// Установка для первой строки текстового слоя полужирного и более крупного шрифта
textourceTexttyleetFontSize(100, 0, 30)etFauxBold(true, 0, 30)

// Установка надстрочного индекса для символов 
textourceTexttyleetBaselineOption(“superscript”,1,2)etBaselineOption(“superscript”, 9, 2) 

Все функции set для текстовых стилей можно использовать вместе, чтобы с легкостью задать несколько атрибутов без необходимости каждый раз определять новый стиль, как показано в следующем примере.

Примечание.

Точка с запятой ставится только после самого последнего атрибута. Написание каждого атрибута в отдельной строке помогает облегчить чтение всей цепочки.

// Включить заливку, задать цвет заливки, задать базовую линию, задать отслеживание и включить автоматический интерлиньяж
textourceTexttyle
etApplyFill(true {n}}
etFillColor(hexToRgb(“FFFFFF”))
etBaselineShift(10)
etTracking(25 {n}}
etAutoLeading(true
// Включить заливку, задать цвет заливки, задать базовую линию, задать отслеживание и включить автоматический интерлиньяж textourceTexttyle etApplyFill(true {n}} etFillColor(hexToRgb(“FFFFFF”)) etBaselineShift(10) etTracking(25 {n}} etAutoLeading(true
// Включить заливку, задать цвет заливки, задать базовую линию, задать отслеживание и включить автоматический интерлиньяж

textourceTexttyle

    etApplyFill(true {n}}
    etFillColor(hexToRgb(“FFFFFF”))

    etBaselineShift(10)

    etTracking(25 {n}}
    etAutoLeading(true

Дополнительнsые варианты использования выражений в исходном тексте

Добавление текстового слоя к композиции и добавление выражения к свойству Исходный текст помогает изучить значения свойств других слоев. Например, следующее выражение в свойстве Исходный текст сообщает имя и значение свойства Непрозрачность для следующего слоя в порядке размещения слоев:

var nextLayer = thisCompayer(index + 1
nextLayerame + “\rOpacity = ” + nextLayer.opacityalue;
var nextLayer = thisCompayer(index + 1 nextLayerame + “\rOpacity = ” + nextLayer.opacityalue;
var nextLayer =  thisCompayer(index + 1
nextLayerame + “\rOpacity = ” + nextLayer.opacityalue; 

В следующем примере сообщается имя элемента видеоряда, используемого в качестве источника самого верхнего слоя изображения в порядке наложения в текущий момент времени, для которого установлен переключатель «Видео»:

// Создать sourceFootageName как пустую строку
var sourceFootageName = “”;
// Перебираем все слои в композиции
for (var i = 1; i <= thisCompumLayers; i++) {
// Если i соответствует индексу этого слоя, перейти к следующему циклу
if (i == index) {
continue;
}
// Установить myLayer для текущая итерация цикла
var myLayer = thisCompayer(i
// Если в myLayer нет видео или он не активен, переходим к следующему циклу/слою
if ( !myLayerasVideo || !myLayerctive ) {
continue;
}
// Если myLayer активен в текущее время
if ( myLayerctive ) {
try {
// Задайте для sourceFootageName имя источника myLayer
sourceFootageName = myLayerourceame;{{n }} } catch ( err ) {
// Если у myLayer нет источника,
// установите для sourceFootageName имя myLayer
sourceFootageName = myLayerame;
// Остановить цикл
break ;
}
}
// Отобразить sourceFootageName
sourceFootageName;
// Создать sourceFootageName как пустую строку var sourceFootageName = “”; // Перебираем все слои в композиции for (var i = 1; i <= thisCompumLayers; i++) { // Если i соответствует индексу этого слоя, перейти к следующему циклу if (i == index) { continue; } // Установить myLayer для текущая итерация цикла var myLayer = thisCompayer(i // Если в myLayer нет видео или он не активен, переходим к следующему циклу/слою if ( !myLayerasVideo || !myLayerctive ) { continue; } // Если myLayer активен в текущее время if ( myLayerctive ) { try { // Задайте для sourceFootageName имя источника myLayer sourceFootageName = myLayerourceame;{{n }} } catch ( err ) { // Если у myLayer нет источника, // установите для sourceFootageName имя myLayer sourceFootageName = myLayerame; // Остановить цикл break ; } } // Отобразить sourceFootageName sourceFootageName;
// Создать sourceFootageName как пустую строку
var sourceFootageName = “”; 
// Перебираем все слои в композиции
for (var i = 1; i <= thisCompumLayers; i++) {
  
    // Если i соответствует индексу этого слоя, перейти к следующему циклу
    if (i == index) {
        continue;
    }
  
    // Установить myLayer для текущая итерация цикла
    var myLayer = thisCompayer(i
  
    // Если в myLayer нет видео или он не активен, переходим к следующему циклу/слою 
    if ( !myLayerasVideo || !myLayerctive ) {
      continue;
    }
  
    // Если myLayer активен в текущее время
    if ( myLayerctive ) {
        try {
            // Задайте для sourceFootageName имя источника myLayer
            sourceFootageName = myLayerourceame;{{n }}        } catch ( err ) {
            // Если у myLayer нет источника,
            // установите для sourceFootageName имя myLayer
            sourceFootageName = myLayerame;
 
  
        // Остановить цикл
        break ;
    }
}
  
// Отобразить sourceFootageName
sourceFootageName;

Сохранение выражений в виде стилей

Выберите свойство Исходный текст с добавленными выражениями. Затем выберите Анимация > Сохранить шаблон настроек анимации, чтобы использовать выражения в других проектах. Шаблоны настроек анимации сохраняются на панели Эффекты и стили.

Дополнительные сведения см. в разделе Обзор эффектов и стилей анимации.

Дополнительные ресурсы о выражениях

Итак, вы изучили основные принципы выражений. На сайте сообщества вы найдете наглядные примеры и сможете показать свои работы.

На форуме AE Enhancers также можно найти множество примеров и сведения о выражениях, сценариях и шаблонах настроек анимации.

Получайте помощь быстрее и проще

Новый пользователь?