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


25

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

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

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

Ответы:


23

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

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

файл данных

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

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

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

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

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

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

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

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

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

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

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

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

диалог импорта

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

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

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

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


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

Фантастика! Ты сэкономил мне часы работы, спасибо, Алан.
MorganR

6

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

#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 в опубликованный код.


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

4

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

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

Здесь это идет:

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

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

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

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

      Image > Variables > Data Sets

    выберите Import…просматривать ваш CSVфайл, и нажмите кнопку OK . Вы также можете проверить 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 плюс, что ваше предложение было большой помощью.
Райан
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.