Есть ли способ пакетного экспорта символов Illustrator в формате png?

Я использую Illustrator в качестве основной графической программы для создания модульных компонентов пользовательского интерфейса.

введите описание изображения здесь

Контекст: я изучаю программное обеспечение для анимации, Pixate , и мне нужно будет загрузить все ресурсы пользовательского интерфейса в библиотеку проекта — есть ли способ упростить это, каким-то образом пакетно экспортируя все символы в библиотеке символов?

Я еще не смог найти решение в Интернете, которое решает эту проблему, и был бы признателен за любое направление!

Привет Ксю, ты уже проверил эту тему? Экспорт символа в формате PNG
Вау, я, должно быть, плохо гуглю :/ Отлично - спасибо! Я попробую это скриптовое решение
Кажется, это отличное решение для элементов одинакового размера (например, значков) — также, по-видимому, требуется перетаскивание всех символов на монтажную область и создание сетки — я думаю, что на этот раз я справлюсь, но я В следующий раз я буду использовать Photoshop, чтобы упростить этот процесс и нарезать компоненты пользовательского интерфейса :)
Хотя это не способ пакетного экспорта, я чувствую, что решение из этой темы с использованием Command-Option-Shift-3 (Mac) избавляет меня от большинства ручных задач.
Если бы все объекты были вставлены в документ, разве ответ Джонатана не был бы быстрее?
Это довольно плотный AI-файл с несколькими слоями внутри слоев — в конечном счете, это подошло к тому, что лучше всего сработает с моими текущими предпочтениями рабочего процесса. Это может не иметь отношения к опубликованному вопросу, но я решил использовать Keynote (вместо Pixate) для создания прототипа. Таким образом, я могу легко копировать и вставлять объекты. Здесь есть отличная ссылка

Ответы (1)

Следующий скрипт экспортирует все ваши символы из библиотеки символов и сохранит их в выбранную папку.

Вам просто нужно сначала убедиться, что все ваши слои скрыты.

var doc = app.activeDocument;
var symbolCount = doc.symbols.length;

if (symbolCount >= 1) {

    if (confirm("Are all your layers hidden?")) {

        // create temp layer
        doc.layers.add();

        // create directory
        var dest = Folder.selectDialog();
        dest.create();

        // loop through symbols
        for (var i = 0; i < doc.symbols.length; i++) {

            // place a symbol instance - temp
            var s = doc.symbolItems.add(doc.symbols[i]);         

            // assign name
            var filename = (doc.symbols[i].name)

            // export symbols
            savePNG(dest, filename);

            // delete temp symbol instance
            s.remove();
        }
        // remove temp layer
        doc.layers[0].remove();
    }

    function savePNG(dest, filename) {
        // save options
        var type = ExportType.PNG24;
        var options = new ExportOptionsPNG24();
        options.transparency = true;

        // file
        var file = new File(dest + "/" + filename);

        // export
        doc.exportFile(file, type, options);
    }

} else {
    alert("You don't have any symbols in this document");
}

Вы можете найти этот скрипт по адресу: https://gist.github.com/shaneparsons/1717f21a757f24fb4559 .