CS5 экспортировать слои в виде файлов с порядковым номером НЕТ


9

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

Он автоматически встраивает префикс числовой последовательности в экспортируемые слои, что делает мое соглашение об именах файлов бесполезным. можно ли это исправить? Есть ли где-нибудь опция под названием «не перенумеровывать мои файлы автоматически» или «использовать имена слоев в качестве имен файлов»?

Я не хочу эту нумерацию. Как это предотвратить?


нет там нет смещения. Я сделал Файл> Скрипты> Загрузить файлы в стек. Внесены изменения, и теперь мне нужно экспортировать все слои в отдельные файлы (Файл> Сценарии> Экспорт слоев в файлы). Это когда CS5 делает эту автоматическую нумерацию. Надеюсь, ты понял это сейчас.
Srikar Appalaraju

Хотя я не люблю нумерацию так же, как и вы, они имеют смысл при обращении к слоям с одинаковыми именами. Поэтому для меня переименование их с помощью небольшого приложения теперь является частью рабочего процесса.
KMSTR

Существует гораздо более элегантный способ обработки дублированных имен слоев. Вместо этого подхода дробовика, они могли бы обнаружить, когда слой имеет то же имя, что и другой, и добавить номер. Таким образом, результат будет что - то вроде filename.jpg, filename1.jpg.
posit labs

Ответы:


11

Иными словами, поскольку Export Layers to Filesон запускается каким-то сценарием, все, что мне нужно было сделать, это найти этот сценарий, затем найти функцию, которая сохраняет слои в файлы, найти, какая часть функции выполняет префикс нумерации, и закомментировать его.

Итак, вот шаги -

  1. на Mac под управлением Lion, goto Applications > Adobe Photoshop CS5 > Presets > Scripts > Export Layers To Files.jsx(в Windows это почти та же директория, что и в «Program Files / Adobe»
  2. Теперь в этом файле перейдите к строке 1030 и закомментируйте ее.
  3. Также в строке 1031 перейдите fileNameBody += "_" + layerName;к fileNameBody += layerName;удалению подчеркивания и круглых скобок.
  4. Закомментируйте строку 1049 (fileNameBody + = "_" + zeroSuppress (i, 4) + "s";)

Сохраните и закройте файл. Это должно сделать работу. Ниже приведены ссылки на источники на форуме.

http://forums.adobe.com/message/3006825

http://forums.devshed.com/photoshop-help-88/removing-number-sequence-in-export-layers-to-files-in-cs5t-730612.html


Звучит более элегантно. И как бы это ни было очевидно, я бы хотел отметить, что на самом деле это изменение встроенного скрипта, в котором вы должны сохранить старый код (обе строки без изменений - просто скопируйте и вставьте тот, который вам нужно изменить) , Таким образом, если вам когда-нибудь понадобится исходная функциональность, вы просто поменяете две строки, которые вы комментируете.
Ханна

да круто Я всегда делаю это как шаг по умолчанию. Это такой базовый шаг, что я даже не упомянул об этом. В любом случае, спасибо за упоминание ради полноты ...
Srikar Appalaraju

1

Я вижу твою проблему. Я не знаю, как это настроить в Photoshop, но у вас есть пара альтернатив.

Во-первых, вы можете переименовать все ваши файлы с помощью Adobe Bridge. (Инструменты >> Пакетное переименование) введите описание изображения здесь

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

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


Йоханнес, ваш скрипт хорош, но на моем компьютере, когда я его запускаю, процесс отображается, но он не выдает никаких результатов.

1

Для Photoshop CC это строка 1020. Кроме того, вы можете копировать, комментировать и редактировать строку под ней, чтобы удалить подчеркивание из именования.

    // fileNameBody += "_" + zeroSuppress(i, 4);
    // fileNameBody += "_" + layerName;
    fileNameBody += "" + layerName;

0

Для CC 2015.5 необходимо закомментировать строки 1083 и 1084

    // fileNameBody += "_" + zeroSuppress(i, 4);
    // fileNameBody += "_" + layerName;

и заменить строки 1085 - 1088

  fileNameBody = fileNameBody.replace(/[:\/\\*\?\"\<\>\|]/g, "_");  // '/\:*?"<>|' -> '_'
    if (fileNameBody.length > 120) {
        fileNameBody = fileNameBody.substring(0,120);
    }

со следующим

fileNameBody += "" + layerName;

0

В диалоговом окне Layer Comps to Files в поле « Префикс имени файла» снимите флажок « Индекс» . Это предотвращает добавление номеров индексов.


0

Я уверен, что понял это, ребята. Спасибо всем, кто писал на этом форуме, давая мне подсказки, которые были необходимы, чтобы положить это отдохнуть. Итак, код выглядит следующим образом:

строка: 2179 var fileNameBody = fileNamePrefix; // fileNameBody + = " " + zeroSuppress (i, 4); // fileNameBody + = " " + layerName; fileNameBody + = layerName;

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

строка: 2219 // fileNameBody + = "_" + zeroSuppress (i, 4) + "s";

По сути, вы должны закомментировать этот код, который должен быть в "var fileNameBody = fileNamePrefix;" строка кода. Это должно удалить префикс, даже если ваши слои сгруппированы.

Единственный код, который вам нужно изменить, это то, что я кодировал красным.

Отказ от ответственности: номер строки в коде может отличаться в зависимости от версии фотошопа. Вы можете обойти это, просто используя функцию поиска приложений для поиска кода. Убедитесь, что вы удалили «//», иначе он не найдет то, что вы ищете в коде.

Я надеюсь, что помогу кому-то с этим.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.