首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >python3 使用pngquant压缩图片

python3 使用pngquant压缩图片

作者头像
Devops海洋的渔夫
发布2022-01-17 10:14:32
发布2022-01-17 10:14:32
1.4K0
举报
文章被收录于专栏:Devops专栏Devops专栏

需求

在使用gitbook截图后保存在本地的图片都比较大,如果直接上传到文件服务中,也是占用比较多的空间。

所以这次考虑试试这个pngquant压缩工具。

官网

https://pngquant.org/

Gihub

https://github.com/kornelski/pngquant

python 实现

访问https://pngquant.org/直接下载 win 和 mac 平台的命令行工具包:

  • Binary for macOS
  • Binary for Windows
解压后的工具包

因为我当前使用win10系统,下载解压后工具包如下:

工具的命令行使用

https://pngquant.org/

那么如果python调用的话,可以采用os.system(cmd)的方式来执行这命令即可。

压缩图片示例代码
代码语言:javascript
复制
import os
import os.path
import sys


SelfPath = sys.path[0]

# 压缩工具
PngquantExe=SelfPath+".\pngquant\pngquant.exe"  # 参考 https://pngquant.org/ 工具来实现的

def compression(filename):
    # cmd = PngquantExe + " --force " + filename +  " --quality 50 -o " + filename # 压缩50%的质量,直接覆盖压缩至源文件
    cmd = PngquantExe + " " + filename +  " --quality 50 -o out.png" # 压缩50%的质量,输出图片名称为out.png
    os.system(cmd)

if __name__ == '__main__':
    compression('1563928708294.png')

文件结构如下:

查看压缩过后的图片大小:

可以看到压缩图片从1004KB至282KB,压缩率还是很可观的。而且保持图片原来的尺寸,不需要裁剪图片大小。

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

本文分享自 海洋的渔夫 微信公众号,前往查看

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 需求
    • 官网
  • Gihub
    • python 实现
      • 解压后的工具包
    • 工具的命令行使用
      • 压缩图片示例代码
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档