前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python批量将Photoshop文件保存为图片

Python批量将Photoshop文件保存为图片

作者头像
double
发布2022-06-29 16:58:31
1.3K0
发布2022-06-29 16:58:31
举报
文章被收录于专栏:算法channel算法channel算法channel

这是给zhenguo老师的投稿,已经收获50元稿费。

困扰我的问题

我是一名电商美工设计师,俗称电商图片搬运工,我的桌面经常是这样的。

再就是这样的。

各种的psd文件再加上文字无法表达色彩和构图的关键信息,时间一久就让我无法分辨这些区别。

以前的解决办法

以前我的办法就是一张一张的保存。然后放到文件的中。或者是采用新版本或者自带预览功能的软件。(这两种办法要不就是有局限性太麻烦,要不就是做到让哭555555)再加上每天再设计的过程中会产生源源不断的psd文件,所以这个问题是很困扰我的。

遇到转机

后来听说,人生苦短,早用python。再加上我对编程有一些简单的了解。并且看到zhenguo老师认真负责的教学态度。我就报名了这个零基础入门Python课程。听老师说Python啥都干,除了不能生孩子。我就想到我这个老大难问题。就想到了用Python编程来解决这个问题。

解决步骤

安装包并调试

找到Python中关于ps调用的包,后来选定了psd-tools包 安装它

读懂psd-tools文档并构建写代码的思路

用从zhenguo老师那里学到的Python的基础语法知识,和os内置模块。还有就是debug调试代码的方法。print()方法测试。

1.读取桌面文件找到所在的文件目录(这里可用input()改写复用) 

2.再该文件下建一个文件夹printPhoto 

3.对每个psd文件的路径进行获取(遍历)

4.保存进行输出

代码展示
from psd_tools import PSDImage
import os
psddir = 'C:/Users/Administrator/Desktop/123/'
#遍历每一个文件下的psd文件
files = os.listdir(psddir)
print(files)
#构建输出文件夹printphoto
outdir = psddir + '/' + 'printphoto'
#判断目录是否存在,不存在就新建一个
if not os.path.exists(outdir):
    print(f"{outdir}⽬录不存在")
    os.mkdir(outdir)
#printphoto文件夹也计数一次所以从0开始
i = 0
for f in files:
    i += 1
    fname = psddir + f
    print(fname)
    #打开每一个psd文件,除psd以外的文件可能报错需要删除可以用if写一个判断。
    psd = PSDImage.open(fname)
    photooutname = os.path.join(outdir, f.split('.')[0]+'.BMP')
    psd.composite().save(photooutname)
print(f'转化完成,一共有{i}个psd文件')

这个错误需要删除文件夹

效果展示

总结

这真的是没有想到的,学习Python能有这么大的作用,语言本身的简洁和老师的认真负责的教学。帮我完成这个工程。这些模板经过删减就可以上传我的网盘模板总结库。这多出来的时间可以去找买顿好吃的了!!!开心撒花~~~~~~

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2022-06-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员郭震zhenguo 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 困扰我的问题
    • 以前的解决办法
      • 遇到转机
      • 解决步骤
        • 安装包并调试
          • 读懂psd-tools文档并构建写代码的思路
            • 代码展示
            • 效果展示
            • 总结
            领券
            问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档