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


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

    困扰我的问题

    我是一名电商美工设计师,俗称电商图片搬运工,我的桌面经常是这样的。a750721c86912c72a26758e30f381af0.png再就是这样的。6de1b5413a20be2cba4dffbe3ff9b7b9.png各种的psd文件再加上文字无法表达色彩和构图的关键信息,时间一久就让我无法分辨这些区别。

    以前的解决办法

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

    遇到转机

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

    解决步骤

    安装包并调试

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

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

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

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

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

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

    4.保存进行输出

    代码展示

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

    这个错误需要删除文件夹67670d58dfe4bac5f7dcf7c67f8de2e6.png

    效果展示

    2c1496fcc1e84209f43cbef337a01f41.png771452d0305e5e0cc308ff0283d04f1e.pngb4f5226bb885bd6fe90f15cd19fadf6c.png

    总结

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

  • 相关阅读:
    云原生之使用Docker部署slash书签共享平台
    《QT实用小工具·六十九》基于QT开发的五子棋AI游戏
    达梦数据库常见日志错误与解决方法
    软件测试工程师怎么样面试上好的公司?
    基于Python的“书怡”在线书店系统的设计与实现毕业设计源码082332
    Roaring Bitmap 更好的位图压缩算法
    linux 使用 navicat 报错的各种问题
    R语言ggplot2可视化分面折线图:使用facet_wrap函数可视化分面折线图、color参数和size参数自定义线条的颜色和宽度粗细
    4-9封装与隐藏
    107. SAP UI5 OverflowToolbar 容器控件以及 resize 事件处理的一些细节介绍
  • 原文地址:https://blog.csdn.net/xo3ylAF9kGs/article/details/125532014