Supporto di scripting per gli assi dei font variabili

Ultimo aggiornamento il 21 gen 2026

Scopri alcuni degli ExtendScript per accedere e controllare gli assi dei font variabili in After Effects.

In After Effects, è possibile utilizzare ExtendScript per accedere e controllare gli assi dei font variabili. Questo significa che puoi automatizzare le modifiche per proprietà come Spessore, Larghezza e Inclinazione tra i livelli di testo, rendendo più semplice creare animazioni dinamiche senza regolare manualmente ogni impostazione.

API dell’oggetto font

Accedere agli assi dei font

// Ottieni l'oggetto font dal livello di testo
var textLayer = comp.layer("My Text");
var sourceText = textLayer.property("Source Text");
var textDocument = sourceText.value;
var fontObject = textDocument.fontObject;

// Verifica se il font ha assi variabili
if (fontObject && fontObject.designAxesData) {
var axes = fontObject.designAxesData;

for (var i = 0; i < axes.length; i++) {
var axis = axes[i];
$.writeln("Axis: " + axis.name);
$.writeln(" Tag: " + axis.tag);
$.writeln(" Min: " + axis.minValue);
$.writeln(" Max: " + axis.maxValue);
$.writeln(" Default: " + axis.defaultValue);
}
}

Aggiunta di animatori di assi tramite Script

Creare una composizione e un livello di testo

// Crea una composizione e un livello di testo
var comp = app.project.items.addComp("Variable Font Demo", 1920, 1080, 1, 30, 30);
var textLayer = comp.layers.addText("Hello World");

Impostare il font su un font variabile

// Imposta il font su un font variabile
var textDocument = textLayer.property("Source Text").value;
textDocument.font = "ShantellSans"; // o qualsiasi nome di font variabile
textLayer.property("Source Text").setValue(textDocument);

Ottenere la proprietà del testo e il gruppo animatori

// Ottieni la proprietà del testo e il gruppo di animatori
var textProp = textLayer.property("Text");
var animators = textProp.property("Animators");

Aggiungi un nuovo animatore

// Aggiungi un nuovo animatore
var animator = animators.addProperty("ADBE Text Animator");
var animatorProps = animator.property("ADBE Text Animator Properties");

Aggiungi un asse Font variabile utilizzando il suo tag a 4 caratteri

// Aggiungi un asse di Font variabile usando il tag a 4 caratteri
// Tag comuni: "wght" (Spessore), "wdth" (Larghezza), "ital" (Corsivo), "slnt" (Inclinazione)
var weightAxis = animatorProps.addVariableFontAxis("wght");

Impostare un valore senza fotogramma chiave

// Imposta un valore (nessun fotogramma chiave)
weightAxis.setValue(700);

Creare fotogrammi chiave

// Oppure crea fotogrammi chiave
var italicAxis = animatorProps.addVariableFontAxis("ital");
italicAxis.setValueAtTime(0, 0);
italicAxis.setValueAtTime(2, 1);

Verifica degli assi disponibili

function getAvailableAxes(textLayer) {
var sourceText = textLayer.property("Source Text");
var textDoc = sourceText.value;
var fontObj = textDoc.fontObject;

if (!fontObj || !fontObj.designAxesData) {
return [];
}

var axisInfo = [];
for (var i = 0; i < fontObj.designAxesData.length; i++) {
var axis = fontObj.designAxesData[i];
axisInfo.push({
name: axis.name,
tag: axis.tag,
min: axis.minValue,
max: axis.maxValue,
default: axis.defaultValue
});
}

return axisInfo;
}