cómo generar automáticamente una variable de texto para cada cuadro de texto en mi archivo de illustrator

Tengo un archivo grande con cientos de imágenes y textos. Necesito exportar todos los textos para enviarlos al traductor. Sé que puedo hacerlo con las variables, pero aún es un proceso largo porque tengo que seleccionar cada cuadro de texto y crear una variable de texto con un nombre unívoco a partir de eso. ¿Alguien sabe si hay alguna manera de automatizar este proceso? ¿Quizás con las Acciones?

Esta pregunta parece estar fuera de tema porque si bien está utilizando un software que generalmente se usa para el diseño, esta pregunta no parece tener nada que ver con el diseño.
Esto suena como una pregunta de flujo de trabajo de diseño para cualquier persona que trabaje en un proyecto que involucre traducción. Si solo necesita extraer el texto, puede hacerlo con dos scripts descargables ("Convertir a punto de texto" y luego "Unir marcos de texto"), luego eso le dará un marco de texto masivo desde el que puede copiar y pegar. Si necesita variables, eso es mucho más difícil ... Si no puede hacer que una acción funcione, podría probar los foros de secuencias de comandos de Adobe
Sugeriría investigar las secuencias de comandos de Illustrator
Actions no es capaz de ese tipo de trabajo.
Gracias por responder, lo siento si me desvié del tema, acabo de descubrir este sitio web y todavía no sé las reglas. ¿Debería moverlo? @user568458 > Esto suena como una pregunta de flujo de trabajo de diseño para > cualquiera que trabaje en un proyecto que involucre traducción. Nunca lo he hecho antes. ¿Existe una forma estándar de hacerlo, tal vez más rápido que usar variables? Después de extraer el texto, necesito reemplazar el traducido en la misma posición

Respuestas (1)

este script apunta a la capa activa, crea variables y las vincula a cada marco de texto

#target illustrator

// script.name = makeActiveLayerTextDynamic.jsx;
// script.description = makes ALL text in the Active Layer Dynamic, creates Variables;
// script.required = one document with at leas one textFrame;
// script.parent = CarlosCanto // 04/17/14;
// script.elegant = false;

var idoc = app.activeDocument;
var ilayer = idoc.activeLayer;


for (i=0; i<ilayer.textFrames.length; i++) {
    var itext = ilayer.textFrames[i];
    var idocvar = idoc.variables.add();
    idocvar.kind = VariableKind.TEXTUAL;

    try {itext.contentVariable = idocvar}
    catch (e) {idocvar.remove()}
}