Извлечение слоев из PSD с ImageMagick, сохранение макета
Я использую ImageMagick для извлечения слоев из PSD, и он получает их все в порядке с:
convert image.psd image-%d.png
но полученные изображения PNG имеют различные размеры, в зависимости от фактического содержимого слоя. Я хотел бы извлечь все слои, но иметь их все одинакового размера, чтобы я мог легко уложить их друг на друга позже и все выстроить так же, как это было в оригинальном PSD.
если это помогает визуализировать то, что я в настоящее время получение с помощью команды выше:
+----+ |A | +-+ +-+ | | = |A| + |B| | B| +-+ +-+ +----+
и чего я хочу, так это:
+----+ +----+ +----+ |A | |A | | | | | = | | + | | | B| | | | B| +----+ +----+ +----+
С полученными изображениями, имеющими прозрачный фон, чтобы я мог это сделать:
+----+ +----+ |A | |A |+ | | = | || | B| | B|| +----+ +----+| +----+
Я никоим образом не связан с ImageMagick, поэтому, если есть другой (предпочтительно командной строки) инструмент, который может достичь этого, это нормально.
2 ответов
введите это, чтобы извлечь слой № 2 из PSD-файла:
convert \
<filename>.psd[0] \
<filename>.psd[2] \
\( \
-clone 0 \
-alpha transparent \
\) \
-swap 0 \
+delete \
-coalesce \
-compose src-over \
-composite \
<extracted-filename>.png
это создает сначала прозрачный холст с тем же размером файла PSD, а затем объединяет его со слоем 2, сохраняя его оригинальный макет (-coalesce
)
Я использую эту командную строку, чтобы сделать то, что описывает:
convert.exe <filename>.psd -set dispose Background -coalesce <outfilename>.png