Illustrator: одновременное редактирование текста в нескольких текстовых полях

У меня есть два текстовых поля, в которых мне нужен одинаковый текст, но с разными шрифтами. Есть ли способ, которым я могу одновременно редактировать только текстовое содержимое обоих (сохраняя разные шрифты).

Ответы (3)

Вы можете динамически загружать текст в Illustrator с помощью XML-файла.

Используя панель «Переменные», вы можете импортировать XML-файл и использовать его для управления существованием объектов, изображениями, отображаемыми в связанных контейнерах изображений, и текстом, отображаемым в текстовом фрейме. Вы также можете управлять данными, отображаемыми на графике. Типичный рабочий процесс заключается в создании шаблона документа, а затем в теге для переменных.

В Интернете есть несколько руководств, в которых обсуждается, как это сделать. В этой статье: КАК ИСПОЛЬЗОВАТЬ ПЕРЕМЕННЫЕ ДАННЫЕ ADOBE ILLUSTRATOR С XML, есть хорошее видео и пошаговое руководство о том, как это сделать.

Или вы можете сделать одно из следующих действий:

1) Удалите второе текстовое поле. Измените текст. Скопируйте -> вставьте текст и примените стиль шрифта или символа.

или же

2) Просто скопируйте текст и вставьте в другое текстовое поле после завершения редактирования первого текстового поля.

Отлично, попробую первый вариант. Я менял текст вручную, но было бы неплохо как-то автоматизировать это. Благодарю вас!

Вы можете использовать этот короткий фрагмент скрипта:

#target illustrator
function ChangeTextContents(){
    if(app.documents.length > 0 && app.documents[0].selection != null){
        var newText = prompt("Enter new text:", "");
        if(newText != null){
            var sel = app.activeDocument.selection;
            for(var i=0; i<sel.length; i++){
                var s = sel[i];
                if(s.typename == "TextFrame"){
                    s.contents = newText;
                }
            };
        }
    }
}
ChangeTextContents();

Он просто поместит ваш вводимый текст в текстовые фреймы, которые вам понадобятся при выделении.

Вот модификация, которая позволяет вам выбирать группы и изменяет текст внутри этих групп. Это работает на вложенных уровнях (группах внутри групп) или непосредственно на выбранных текстовых слоях.

#target illustrator
function ChangeTextContents(){
    if(app.documents.length > 0 && app.documents[0].selection != null){
        var newText = prompt("Enter new text:", "");
        if(newText != null){
            var sel = app.activeDocument.selection;
            for(var i=0; i < sel.length; i++){
                ChangeElement(sel[i],newText);
            }
        }
    }
}

function ChangeElement(thisSelection,text) {
                // For each selected item, determine if it is text or a group
                // For text items, just change the contents
                if(thisSelection.typename == "TextFrame"){
                    thisSelection.contents = text;
                    // For group items, iterate through each group item and recursive call this function. 
                } else if (thisSelection.typename == "GroupItem") {
                    // Change the text items within this level of the group
                    for(var k=0; k < thisSelection.textFrames.length; k++){
                        ChangeElement(thisSelection.textFrames[k],text);
                    }

                    // Now recursively process the group items within this group
                    for(var j=0; j < thisSelection.groupItems.length; j++){
                        ChangeElement(thisSelection.groupItems[j],text);
                    }
                }
}

ChangeTextContents();
Привет, Рик, добро пожаловать в GD.SE и спасибо за ответ! Пожалуйста, ознакомьтесь с туром и справочным центром , чтобы получить представление о том, как работает Stack Exchange — мы не просто случайный форум. Как только ваша репутация достигнет 20, вы также можете присоединиться к нам в чате по графическому дизайну . Продолжайте вносить свой вклад и наслаждайтесь сайтом!