这是给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'
#判断目录是否存在,不存在就新建一个
ifnot
 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能有这么大的作用,语言本身的简洁和老师的认真负责的教学。帮我完成这个工程。这些模板经过删减就可以上传我的网盘模板总结库。这多出来的时间可以去找买顿好吃的了!!!开心撒花~~~~~~
继续阅读
阅读原文