32

У меня есть большой PSD-файл с несколькими сотнями слоев, из которого я хотел бы извлечь выделенные области из файлов PNG.

Области могут состоять из пары слоев.

Будучи новичком в Photoshop, я использовал следующий обходной путь. Дублируйте нужные слои в новый рабочий файл PSD того же размера, TRIM для прозрачности, сохраняйте как PNG, отменяйте TRIM, скрывайте слои, промывайте и повторяйте ...

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

Какие еще есть способы выполнить этот экспорт выбранной области в PNG?

РЕДАКТИРОВАТЬ: Это на Windows Xp работает Photoshop CS3 Extended

4 ответа4

38
  • Сделай свой выбор
  • Правка -> Копировать объединено
  • Файл -> Новый (Photoshop должен автоматически предложить новый размер холста, соответствующий размеру выделения)
  • Правка -> Вставить
  • Файл -> Сохранить как (PNG)
  • Промыть и повторить ... (здесь удобные сочетания клавиш)

(Проверено на Photoshop CS4)

15

Попробуйте выбрать области с помощью инструмента «Срез», а затем выберите «Файл»> «Экспорт для Интернета и устройств».

1

Я решил эту проблему, создав скрипт, который поместил в Presets\Scripts\Export Selection to PNG.jsx

Код следующим образом:

app.displayDialogs = DialogModes.NO;

var pngSaveOptions = new PNGSaveOptions();
pngSaveOptions.compression = 9;

var hasSelection;
var docRef;
try {
    hasSelection = !!app.activeDocument.selection.bounds;
} catch (err) {
    hasSelection = false;
}

if (hasSelection) {
    app.activeDocument.selection.copy(true);
    var w = app.activeDocument.selection.bounds[2];
    var h = app.activeDocument.selection.bounds[3];
    docRef = app.documents.add(w, h);
    docRef.paste();
} else {
    docRef = app.activeDocument;
}
var file = File.saveDialog("Export as PNG to...");
if (file && ((file.exists && confirm("Overwrite " + file +"?")) || !file.exists)) {
    docRef.saveAs(file, pngSaveOptions, !hasSelection, Extension.LOWERCASE);
    if (hasSelection) {
    docRef.close(SaveOptions.DONOTSAVECHANGES);
    }
}

Приведенный выше скрипт будет обрабатывать no-selection как "select all" и проверяет, существует ли целевой файл, подтверждая перезапись.

Этот скрипт запускается из File->Scripts->Export Selection to PNG

-1

Сделай выбор. Затем нажмите Ctr или CMD + J, чтобы скопировать это выделение в новый слой. затем:

File -> Scripts -> Export Layer to Files...

Экспортировать слои в файлы

Если ваш слой меньше, чем полная ширина / высота холста, не забудьте проверить Trim Layers .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .