美文网首页
app 工程中png图片批量自动化进行压缩

app 工程中png图片批量自动化进行压缩

作者: 移动端技术 | 来源:发表于2018-07-26 10:42 被阅读0次

备注:将pngquant放在自己的Document下面 pngquant 链接
pngquant 插件具体使用请参照开源文档 链接

代码如下
使用说明:PngquantExe 需要将yulekwok改为自己的目录

# -*- coding: UTF-8 -*-
import os

# 获取指定路径下所有指定后缀的文件
# dir 指定路径
# ext 指定后缀,链表&不需要带点 或者不指定。例子:['swift','h','m']
def GetFileFromThisRootDir(dir, ext = None):
    allfiles = []
    needExtFilter = (ext != None)
    for root,dirs,files in os.walk(dir):
        for filespath in files:
            filepath = os.path.join(root, filespath)
            extension = os.path.splitext(filepath)[1][1:]
            if needExtFilter and extension == ext in ext:
                allfiles.append(filepath)
    return allfiles


def list_all_files(rootdir):
    import os
    _files = []
    list = os.listdir(rootdir) #列出文件夹下所有的目录与文件
    for i in range(0,len(list)):
           path = os.path.join(rootdir,list[i])
           if os.path.isdir(path):
              _files.extend(list_all_files(path))
           if os.path.isfile(path):
              _files.append(path)

    return _files

if __name__ == '__main__':
    PngquantExe="/Users/yulekwok/Documents/pngquant"
    srcDir = os.path.dirname(os.path.realpath(__file__))
    print("srcDir is ",srcDir)
    # srcDir = "/Users/yulekwok/Desktop/minfangPhoto2"
    type_name =  'png'
    # imgFiles=GetFileFromThisRootDir(srcDir, name)
    suffix="_png_quan_test.png"
    all_files =  list_all_files(srcDir)
    for filepath in all_files:
       extension = os.path.splitext(filepath)[1][1:]
       if extension.lower() ==  type_name:
           print("oldfile", filepath)
           cmd = "\"" + PngquantExe + "\"" + " --ext " + suffix + " --force --speed=3 "+ filepath.replace(" ","\ ")
           # cmd = "\"" + PngquantExe + "\"" + " --quality=0-100 " + f
           os.system(cmd)
           newfile=filepath.replace("." + extension, suffix)
           os.remove(filepath)
           print("newfile",newfile)
           os.rename(newfile, filepath)
    print("#######---compressimageOK---#######")

github 工程 链接

作者说明:郭玉乐 yulekwok@gmail.com

相关文章

  • app 工程中png图片批量自动化进行压缩

    备注:将pngquant放在自己的Document下面 pngquant 链接pngquant 插件具体使用请参照...

  • 技术杂货铺

    统计工程中类个数 2.压缩工程中png图片 3.测试APP启动时间 4.批量删除git分支 Android 命令查...

  • pngquant图片压缩

    pngquant pngquant可以通过命令行压缩png图片。 脚本批量压缩png图片 quality表示压缩的...

  • Webp图片批处理程序

    功能 1、批量将PNG/JPEG格式图片转换Webp格式图片2、批量将Webp格式图片再压缩【压缩效率0-100可...

  • App瘦身、性能优化总结

    App瘦身 资源瘦身 使用tinypng压缩PNG图片。视频可以通过 Final cut等软件进行分辨率压缩。音频...

  • .png图片批量压缩脚本

    目的应用开发中,安装包的大小是很重要的,所以需要对资源进行压缩,特别是图片。这是一个python编写的简单的.pn...

  • webpack-imgmini,一个运用webpack批量压缩图

    运用webpack批量压缩图片的小工具,支持png,jpg,gif,对大图片压缩效果较好 项目地址:https:/...

  • 性能优化04-图片优化

    性能优化04-图片优化 一、图片压缩 图片在APP中通常占用很大的内存,所以经常需要进行图片压缩。 常用的图片压缩...

  • iOS优化-瘦身

    图片 1、批量压缩图片(tinyPNG) 用TinyPNG[https://tinypng.com/]将图片进行压...

  • PNG Zip限免

    PNG Zip是一款为App和游戏开发的PNG图片压缩工具。它的压缩率最高能够达到70%,从而大大减少App和游戏...

网友评论

      本文标题:app 工程中png图片批量自动化进行压缩

      本文链接:https://www.haomeiwen.com/subject/rwwvmftx.html