Как создать пакетное задание нумерации изображений (написание на них текста) от 1 до 100 в Photoshop?

Хотите создать 100 изображений, на которых будут написаны соответствующие номера.

Поскольку в будущем я, скорее всего, буду вносить изменения в шаблон, я подумал, что было бы лучше как-то это автоматизировать.

Есть ли простое решение этой проблемы?

Ответы (3)

Это зависит от того, как вы определяете «простой». Photoshop имеет встроенную функциональность переменных данных, но она не очень хорошо документирована и считается неподходящей темой для вежливого разговора, например, на коктейльных вечеринках или церковных мероприятиях. С другой стороны, я уже много лет не использовал это сам, поэтому создание этого урока было хорошим обновлением.

Вам понадобится файл с разделителями-запятыми или табуляцией с именем для каждой переменной (я собираюсь использовать «Image» и «ImageNumber»). Вот тот, над которым я издевался для этого упражнения. Обратите внимание, что имена файлов изображений не имеют пути только потому, что они находятся в той же папке, что и файл данных. Вы можете использовать относительные или абсолютные пути для имен файлов:

файл данных

Вам нужно настроить свой шаблон. Предположим, вам нужно два слоя: изображение (переменная) и число (текстовый слой, переменная). Слой изображения должен быть фактическим слоем, а не фоном.

базовый шаблон фотошопа слои

После того, как вы настроите их, выберите слой изображения, и под Image > Variables > Defineвами появится это диалоговое окно (я установил флажок «Замена пикселей», так как это то, что нам нужно использовать):

определить переменную изображения

Измените поле «Имя» на выбранное вами имя переменной («Изображение») и установите «Метод» на то, что вам нужно. Я выбираю «Заполнить», что пропорционально изменит размер изображения, но вы можете предпочесть что-то другое. Информация о каждом методе отображается в поле «Описание» при наведении курсора на имя. Закройте диалог.

Мы выбираем текстовый слой и повторяем процесс, называя текстовую переменную «ImageNumber».

определить текстовую переменную

Теперь нам нужно определить набор данных, поэтому нажмите кнопку «Далее» в диалоговом окне и щелкните значок «Новый набор данных» (справа от корзины) в диалоговом окне.

Диалоговое окно набора данных

Набор данных — это набор значений, которые применяются к конкретному выходному документу, а не полный набор значений в файле с разделителями-запятыми, поэтому теперь мы определяем начальное изображение для нашего шаблона, нажав кнопку «Выбрать файл...» с выбрана переменная изображения. Я выбрал изображение хризантемы. Убедитесь, что «Не заменять» НЕ выбрано.

выбранное значение изображения

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

диалоговое окно импорта

Исчерпаны еще? -- Есть больше. Нажмите OK, чтобы закрыть диалоговое окно Переменные.

Последним шагом является выбор File > Export > Data Sets as Files...и выбор места для сохранения вывода, а также выбор соглашения об именах.

диалоговое окно экспорта

Когда вы нажмете OK, весь набор файлов psd будет экспортирован в выбранное вами место.

Я следил за этим до определенного момента, но теперь застрял. Когда я прихожу к экспорту своих файлов, мне нужно, чтобы каждый из них имел значение одной из связанных с ним переменных. Кажется, это позволяет мне использовать только ограниченную опцию с порядковым номером, что не подходит для того, что мне нужно делать. Любые советы будут оценены по использованию CS5 или других.
Фантастика! Вы сэкономили мне часы работы, спасибо, Алан.
Вау, спасибо, чувак. Именно то, что мне было нужно!

Да, автоматизировать можно. Откройте инструментарий расширения сценария. Напишите

#target Photoshop
alert("Hello "+app.activeDocument.name+"!")

Сохраните сценарий и запустите его. Теперь он должен увидеть окно с предупреждением, если PS открыт и имеет документ. Это просто javascript, вы можете найти справочное руководство:

Вот как вы меняете текст в текстовом слое и сохраняете его (добавляя бит сохранения, потому что это немного сложно):

#target Photoshop

var textlayer = app.activeDocument.layers.getByName('Text');
textlayer.textItem.contents = 'foo';

var exportOptionsSaveForWeb = new ExportOptionsSaveForWeb();
exportOptionsSaveForWeb.format = SaveDocumentType.PNG;

var saveFile = new File("file:///c:/temp/test.png");
app.activeDocument.exportDocument(saveFile, ExportType.SAVEFORWEB, exportOptionsSaveForWeb);

Так что я не буду делать всю работу за вас, вам все равно нужно поставить цикл for вокруг опубликованного кода.

Скопируйте и вставьте это в существующий вопрос, пожалуйста

Это решение проблемы, описанной в разделе «Автоматическое создание образа с добавлением номера, который увеличивается с каждой итерацией».

Да, это немного похоже, но вместо текущего вопроса ведьма many -> manyмоя one -> manyи имеет немного другое и более быстрое решение.

Вот оно:

  1. Открыл изображение, добавил Typeслой со всеми стилями, которые хотел.
  2. Затем я пошел в

    Image > Variables > Define…
    
  3. Установите Layer:имя моего текстового слоя, установите флажок Text Replacementи задайте Text Replacementпеременную Name:(я назвал ее number). И нажал ОК .

  4. Открыл какой-нибудь редактор электронных таблиц, такой как Excel, Numbers, Google Docs и т. д., и ввел следующее в первый столбец:

    1. В первой строке я написал имя моей переменной (у меня - number).
    2. Ниже (2-я строка) я ввел 1. Иногда, чтобы шаг 3 сработал, вам нужно ввести 23-ю строку.
    3. Теперь, используя стандартное автозаполнение электронной таблицы, захватите правый нижний угол ячейки с 1 (или 2) и перетащите вниз. Таким образом, все ячейки ниже должны быть заполнены последовательными числами (я сгенерировал последовательность до 99).
    4. Хорошо, теперь все, что вам нужно сделать, это экспортировать электронную таблицу в формат CSV.
  5. Теперь вы должны пойти в

      Image > Variables > Data Sets…
    

    выберите Import…«Просмотреть CSVфайл» и нажмите «ОК » . Вы также можете Previewнажать кнопку, чтобы увидеть, как ваше изображение будет выглядеть с определенным набором данных (числом). Еще раз нажмите OK , чтобы сохранить наборы данных.

  6. Наконец, чтобы получить все файлы с разными вещами, перейдите к

    File > Export > Data Sets as Files…
    

    Выберите папку назначения и убедитесь, что у вас All Data Setsвыбрана опция, так как это создаст файл для каждого из наборов данных, как раз то, что нам нужно. В этом же окне вы также можете выбрать вариант именования экспортируемых файлов. И нажмите ОК :)

  7. Это создаст psdфайлы, поэтому вам нужно будет как-то преобразовать их во что-то более простое. Это может быть достигнуто с

    File > Scripts > Image Processor…
    

    Этот скрипт позволит вам конвертировать множество psdизображений JPEGодним нажатием кнопки.

Также, возможно, вас заинтересует следующий урок о переменных Photoshop: http://layersmagazine.com/photoshop-variables.html .

Спасибо за эту часть: «Этот скрипт позволит вам конвертировать множество изображений psd в JPEG одним нажатием кнопки». graphicdesign.stackexchange.com/a/4874/45239 плюс это ваше предложение очень помогло.