establecer la mesa de trabajo activa por nombre en Illustrator?

Hay getActiveArtboardIndexy setActiveArtboardIndex, puedo obtener el Artboardobjeto con getByName.

Pero, ¿cómo configuro la mesa de trabajo activa por nombre ?

¿O al menos obtener el índice del Artboardobjeto?

Respuestas (1)

No es la forma más elegante, pero aún resuelve el problema:

var docRef = app.activeDocument;
var ABName = "Artboard Name";
function setActiveArtboardBy(name) {
    var artboard = docRef.artboards.getByName(name);
    for (i = 0; i < docRef.artboards.length; i++) {
        if (docRef.artboards[i] == artboard) {
            docRef.artboards.setActiveArtboardIndex(i);
            break;
        }
    }
}
setActiveArtboardBy(ABName);
Explique qué hace este fragmento de código. Solo presentar el código hace que todos los lectores no puedan entender lo que hiciste ...
Kurt, toma el objeto de la mesa de trabajo por nombre dado, luego pasa por todas las mesas de trabajo comparándolas con él. Cuando descubre el correcto, lo establece como activo y rompe el ciclo. Eso es lo que hace esta función.