Imagemagick 将具有自定义通道的PSD转换为JPG 情况

Imagemagick 将具有自定义通道的PSD转换为JPG 情况,imagemagick,photoshop,Imagemagick,Photoshop,我有大量PSD文件(~10000),希望在没有gui的情况下创建所有这些文件的JPEG 限制 转换过程需要(最终)在无头linux/osx机器上进行,因此必须从命令行运行。 我正在运行OSX/Linux环境,因此解决方案需要在其中一个(或两者)上运行 以前的尝试 对于某些文件(最近的文件),请使用convert命令: 转换-展平输入.psd输出.jpg 很好 对于其中一些(具有预览/兼容模式的) convert input.psd[0]output.jpg 也很好用 然而,当我尝试从8位

我有大量PSD文件(~10000),希望在没有gui的情况下创建所有这些文件的JPEG

限制 转换过程需要(最终)在无头linux/osx机器上进行,因此必须从命令行运行。 我正在运行OSX/Linux环境,因此解决方案需要在其中一个(或两者)上运行

以前的尝试 对于某些文件(最近的文件),请使用convert命令:


转换-展平输入.psd输出.jpg
很好

对于其中一些(具有预览/兼容模式的)


convert input.psd[0]output.jpg
也很好用

然而,当我尝试从8位/通道多通道设计转换时,convert命令给出了一个非常古怪的输出。我假设它试图使用RGB,但显然这是不对的

有没有什么方法/工具可以用来从这些多通道PSD生成jpeg? 事实上,即使以某种方式认识到这是一个非标准PSD也会有很大的帮助,因为我可以以不同的方式对待它们(运送到另一台机器进行更多处理等)

要查看示例,请执行以下操作:


您可以了解如何获得Photoshop的编程许可证。或者,您可以创建操作并尝试通过CLI触发这些操作。所有操作仍将通过PS运行,但可以通过ssh在无头Mac上触发。

尝试
$convert-depth 8 rgb:image.jpg


或者可能
$convert-channel RGB image.jpg
在输出前将其转换为RGB。

我也面临着将多通道psd/psb文件转换为jpg的相同问题。我正在W8系统上使用PhotoshopCS5。使用photoshop将所有此类psd/psb文件转换为jpg的步骤/过程非常繁琐和耗时。创建操作是必要的,自动化还需要用户与系统交互

为此,我开发了一个VBScript和一个JavaScript,它将要求用户提供一个文件夹,其中存储了所有此类psd/psb文件。脚本将一个接一个地选择所有文件,并执行手动执行的所有步骤,并在同一文件夹中为用户提供具有相同文件名和所需分辨率的JPG文件

这完全是一个批处理过程,不需要用户参与。但是是的,因为我们也需要jpg中多通道的原始颜色,所以这个过程使用photoshop并完成所有步骤。因此,当进程运行时,用户将无法使用photoshop

有很多免费软件可以在互联网上进行这种转换,但正如我所看到的,没有一个能够保留psd文件中给出的原始颜色。由于此过程使用photoshop,您可以从psd/psb获得准确的jpg

您可以在以下网址观看此批处理过程的演示:www.youtube.com/watch?v=fmHGAW6Efew 如果你还有任何疑问,一定要告诉我

谢谢,
Gautam Chhatbar

我刚刚创建了一个节点模块,用于处理CLI中的PSD文件。只需一个命令,即可将其用于任意多个文件

就我的测试而言,Gimp并不是一个真正的解决方案,而且对现代PSD文件的理解很差,而NodeJ恰好有一个处理Photoshop格式的很棒的新包

下列机构的指示:

安装它:

npm安装-g psd cli

myfile.psd
转换为新的
myfile.png

psd myfile.psd

转换多个文件也可以:

psd*.psd


希望你觉得这个有用!软件包非常新,其他很酷的功能很快就会被添加,任何功能请求都是最受欢迎的,并且非常感谢帮助改进代码:)

谢谢,我已经想到了这一点,但不确定它的效率有多高。我将尝试其他一些替代方案,并将其作为备份进行研究(确实希望在linux上运行此headless,但osx是一个选项…),不幸的是,这两种方法都给出了与上面相同的结果。困难在于通道是自定义颜色,在转换之前似乎无法检测这些颜色Photoshop支持COM接口,该接口具有多种语言的绑定,可在Mac OSX上使用(不确定linux)。您可以编写一个python脚本,使用Photoshops COM接口将任何自定义文件保存为标准RGB。使用ImageMagick库(同样由python支持)进行其余处理可能会更快。无论如何,您可能必须编写一些代码。