Python 以编程方式编辑Photoshop PSD文本层
我有一个多层PSD,其中一个特定层是非光栅化文本。我正试图从bash/perl/python/其他任何程序中找到一种方法:Python 以编程方式编辑Photoshop PSD文本层,python,perl,image,photoshop,psd,Python,Perl,Image,Photoshop,Psd,我有一个多层PSD,其中一个特定层是非光栅化文本。我正试图从bash/perl/python/其他任何程序中找到一种方法: 加载PSD 编辑所述层中的文本 展平图像中的所有层 另存为网页友好格式,如PNG或JPG 我立刻想到了,但我不认为我可以通过IM编辑文本层。如果我能以其他编程方式完成前两个步骤,我总是可以使用ImageMagick执行最后两个步骤 在谷歌搜索CPAN和PyPI几个小时后,我仍然没有发现任何有希望的东西。有人对此有什么建议或想法吗?如果你想让Photoshop自动化,你几乎必
在谷歌搜索CPAN和PyPI几个小时后,我仍然没有发现任何有希望的东西。有人对此有什么建议或想法吗?如果你想让Photoshop自动化,你几乎必须使用Photoshop自己的脚本系统。我认为没有办法解决这个问题
从另一个角度来看这个问题,你能不能从Photoshop导出到其他支持图层的格式,比如PNG,它可以通过ImageMagick编辑?我能想到的自动更改PSD内部文本的唯一方法是使用基于正则表达式的替换
至于转换成png,我不知所措。如果替换脚本是用Python编写的,那么您可以使用Python图像库(PIL,)进行替换,否则您可能只需打开Photoshop即可进行转换。这意味着一开始可能不值得实用地更改文本。如果您不喜欢使用官方支持的AppleScript、JavaScript或VBScript,那么也可以使用Python。这篇文章对此进行了解释,它依赖于Photoshop的COM接口 我没有尝试过,因此,如果它对您不起作用:
如果您的文本在之后被保留,那么您可以简单地用您喜欢的任何工具替换它。然后,将其转换为PNG(例如通过
inkscape--export PNG=…
)。您是否考虑过在GIMP中打开和编辑图像?它有很好的PSD支持,可以用多种语言编写脚本
您使用哪一个部分取决于您的平台,Perl接口在我知道的最后一个Windows上不起作用。我相信所有端口都支持该方案。您可以使用Photoshop本身通过OLE实现这一点。当然,您需要安装Photoshop。Perl中的Win32::OLE或Python中的类似模块。请参见您也可以使用Node.js尝试此操作。我犯了一个错误 单行命令安装(需要安装NodeJS/NPM)
npm安装-g psd cli
然后,您可以通过在终端中键入来使用它
psd myfile.psd-t
您可以从另一个节点脚本或通过另一个Bash/Perl/任何脚本的shell检查代码以使用它。十六进制编辑的好主意,但不幸的是,它似乎根本不会更改层中的文本(如果我用不同长度的字符串替换它,它会损坏PSD文件).谢谢你提到这件事。帮了我很多忙。我想我要走这条路。除了PS的内置脚本(如果我没有弄错的话,必须从Photoshop中手动启动)之外,它似乎是最一致的选项。Hi@kartsims这个命令导出文本细节,但是我们如何更改PSD文件中的文本?不能使用这个库,请尝试PSD.js,它基于的节点库。它有更多的功能Shi@EvanK,你有解决方案吗?如果是,请与我分享。