Text Layer Type
A text layer defines a container for text data. It has a single specific property (text) and others shared with other layer types (transform, masks, effects, layer styles).
Definition | Name | Type | Required | Default |
---|---|---|---|---|
Type | ty | Layer Types | ✅ | 5 |
Text | t | Object | ✅ | |
Index | ind | Number | ✅ | |
Transform | ks | Object | ✅ | |
Parent | parent | Number | ➖ | |
In Point | ip | Number | ➖ | |
Out Point | op | Number | ➖ | |
Start Point | st | Number | ➖ | |
Time stretch | sr | Number | ➖ | 1 |
Masks | masksProperties | Array[Mask Elements] | ➖ | |
Track Matte Masked Layer | tt | Matte Mask types | ➖ | |
Track Matte Masking Layer | td | Number | ➖ | |
Track Matte Masking Layer Index | tp | Number | ➖ | |
Blend Mode | bm | Blend Mode types | ➖ |
Type Property
Text
Details
Property name: t
Property type: object
Required
A text object is composed of four different objects: document data, animators, text path, more options.
Definition | Name | Type | Required | Default |
---|---|---|---|---|
Document Data | d | Text Document | Text Document Animated Property | ✅ | |
Text Path Data | p | Object | ✅ | |
Other Options | m | Object | ✅ | |
Animators | a | Array[Object] | ✅ |
Document Data
This property contains a single animatable property, k, that is a set of all the paragraph data of the text.
Text Path Data
Details
Property name: p
Property type: object
Required
When enabled, a text layer will use a mask defined on the layer to describe an irregular baseline that the text should follow when being rendered. If the text has multiple lines, each line will use the same path described by the mask offsetted by the line height of the text.
If a line of text exceeds the path described by the mask, both ends of the mask should be extended infinitely, parallel to the the first and last vertex of the path.
Mask
The index of the mask defined in the masksProperties attribute of the layer that will be used as baseline of the text.
First Margin
A margin to offset the drawing of the text from the first vertex of the shape
Last Margin
A margin to offset the drawing of the text from the last vertex of the shape
Force Alignment
If active, each line of text should be rendered contained within the shape defined by the mask by adjusting the tracking.
Perpendicular to Path
If active, text should be rendered perpendicular to the direction of the baseline.
Reversed
If active, text should be rendered starting from the last vertex of the mask.
Other Options
Details
Property name: m
Property type: object
Required
This object contains other properties affecting the rendering of the text.
Anchor Point Grouping
This property defines how each character anchor point should be grouped relative to the defined value to apply animators and drawing along a path.
Grouping Alignment
Controls the alignment of the anchor point relative to the anchor point group. The tuple defines a pair of coordinates based on a percentage of the group anchor point.
Animators
Details
Property name: a
Property type: list
Required
Animators are a collection of transformations that can be applied to a text layer. They consist of a range selector and a set of optional properties.
Range Selector
Details
Property name: s
Property type: object
Required
The range selector property has a set of properties that define how transformations are applied to the text. This range allows for animations on more granular parts of the text, like characters, words, lines and the text box.
Type
It specifies the type of selector, it can be expression based or parametric.
Range Units
It specifies the units that are used to calculate ranges.
Range Start
It specifies the start of the range that transformations will be applied to. If range units are percentage based, the values range from 0 to 100, if they are index based, valid values are any positive number.
Range End
It specifies the end of the range that transformations will be applied to. If range units are percentage based, the values range from 0 to 100. If they are index based, valid values are any positive number.
Range Offset
It specifies an offset of the range that transformations will be applied to. If range units are percentage based, the values range from -100 to 100. If they are index based, valid values are any positive number.
range base mode
Specifies how ranges should affect text. It has four values: Characters, Characters excluding Spaces, Words and Lines. Depending on this option, all the other properties will operate on the block specified by it.
Range Shape
The shape indicates how the range will operate over the selected blocks within the range. The default value is square. You can think of this property as a factor that should be multiplied to all transformations before applying the final value.
Amount
A multiplier expressed in percentage applied to the result of the factor of transformation
Max Ease
An easing value that affects the speed of change as selection values change from fully included (high) to fully excluded (low)
Min Ease
An easing value that affects the speed of change as selection values change from fully included (high) to fully excluded (low)
Random
If active, transformations should be applied randomly to each selected block. Random seed is not enforced.
Transform Properties
This is the list of all supported properties that can modify a text within the ranges described above:
-
Anchor Point (a)
-
Position (p)
-
Scale (s)
-
Rotation (r)
-
Rotation X (rx)
-
Rotation Y (ry)
-
Opacity (o)
-
Fill Color (fc)
-
Fill Hue (fh)
-
Fill Saturation (fs)
-
Fill Brightness (fb)
-
Fill Opacity (fo)
-
Stroke Color (sc)
-
Stroke Hue (sh)
-
Stroke Saturation (ss)
-
Stroke Brightness (sb)
-
Stroke Width (sw)
-
Stroke Opacity (so)
-
Tracking (t)
-
Text Skew (sk)
-
Text Skew Axis (sa)
-
Text Blur (bl)
-
Text Line Spacing (ls)
All properties are animatable and optional.