Python利用 psd-tools库 解析psd文件的图层

北城余情 提交于 2020-02-27 18:37:05

最近设计师提了一个好玩的需求,他们批量上传PSD文件,将里面的图层文件解析出来,这样不用他们一个个打开PS再进行导出。好吧,安排!!!原本想使用Java开发这个功能,但是真的太繁杂以及啰嗦了,突然想到Python,这货太强大了,简直是开发小哥的福音,为了完成这个功能,我使用了python的 psd-tools 库。

项目介绍:psd-tools——psd工具是一个Python包,用于处理Adobe Photoshop psd文件。

类库安装:pip install psd-tools

下面是一个PSD文件解析Layer的demo,仅供参考!!!
实际业务根据自己的去改动就可以实现PSD文件解析图层功能或者像我一样,写个GUI处理。

from psd_tools import PSDImage

psd = PSDImage.open('D:\\www\\python\\1119\\流行色.psd')
psd.compose().save('D:\\www\\python\\1119\\layer\\流行色\\流行色.png')

# for layer in psd:
#     print(layer)

for layer in reversed(list(psd.descendants())):
    layer_name = str(layer.name)
    layer_name = layer_name.replace('"', '')
    layer_name = layer_name.replace(' ', '')
    layer_name = layer_name.replace('.', '')
    layer_name = layer_name.replace('png', '')

    print(layer_name)
    print(layer)

    layer.compose().save('D:\\www\\python\\1119\\layer\\流行色\\'+str(layer_name)+'.png')
    # print(layer)

    # if layer.kind == 'pixel':
    #     print(layer.name)
    #     print(layer.size)

解析结果:

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!