1.Png 简介。

我们知道Png 有4个通道,RGBA, 多了一个表示透明的。png 有 png 32, 24, 8 等。 大致我理解的是表示颜色的多少。 数字越小,文件就越小。常见的压缩方式是导入一张图到做图软件中,然后导出png 8,而且带 alpha,这样就达到压缩目的。当然是有损的压缩。一张张图弄非常麻烦,我在想有没有C++代码能够搞定的,然后做个简单软件批量压缩png。

2.pngquant 使用

去google 发现了这个东西,打开主页看了了,很不错。 地址:http://pngquant.org/

能把一个png平均压缩掉70%,并且肉眼看不出有非常大的损耗。当然输出的质量也是可控制的。

原图,1024x1024 877KB

选50质量压缩后的图:1024x1024 208KB,压缩率高达0.23

还是有透明效果的!

3.windows 下简单使用批处理循环处理全部png

pngquant 是有在github上host了整个lib的代码。是c代码。能够用。只是官方有写好的exe,能够直接拿来用。使用方法:

详细样例:

pngquant -f --ext .png --quality 50-50 Ui.png   (以50质量来处理图片,直接覆盖掉原图片)

我们能够做一个批处理:新建一个txt,后缀改成bat,写入以下内容(当然你质量能够作为用户输入的变量):

echo "開始处理..."

for /R %%i in (*.png) do (
pngquant -f --ext .png --quality 50-50 "%%i"
) pause

我从80质量測试到20,发现50比較接近做图软件导出的png 8格式。只是80质量的压缩效率已经很高了,强烈建议使用80。

4.批处理和pngquant打包下载地址

http://www.waitingfy.com/?attachment_id=1152

下载会得到pngquant.ext 和Compression.bat, 复制到你要批量压缩png的目录里,点击Compression.bat就会批量压缩png了。

注意:会替换原图,请单独复制一份资源来操作!!

假设你是mac或者linux用户,请到官方下载相应版本号,使用命令的形式。用find xx。

參考:

pngquant 使用介绍

一个不错的 png压缩工具 pngquant 使用介绍 批量压缩png的更多相关文章

  1. 一个不错的loading效果--IT蓝豹

    一个不错的loading效果 介绍:一个不错的loading加载效果,弹性收缩,效果不错,学习android动画的朋友可以下载来研究研究本例子其实由SeekBar实现,由MetaballView,Me ...

  2. JavaScript压缩工具JSA使用介绍

    JavaScript压缩工具JSA使用介绍 JSA绝对是我使用过的JS压缩工具中最上乘的一个.认识它是从ligerUI开始.在ligerUI的QQ讨论组里,大神--ligerUI的作者告诉我他的lig ...

  3. datetimepicker一个不错的日历android特效

    datetimepicker一个不错的日历效,选中和选择日历效果都很不错, 实用的时候直接可以把datetimepicker-library这个引入到项目,调用的地方在实现 TimePickerDia ...

  4. 一个不错的shell 脚本教程 入门级

    一个很不错的bash脚本编写教程,至少没接触过BASH的也能看懂     建立一个脚本 Linux中有好多中不同的shell,但是通常我们使用bash (bourne again shell) 进行s ...

  5. 【转】一个不错的eclipse反编译插件

    [转]一个不错的eclipse反编译插件 在CSDN论坛上看到的一个不错的eclipse反编译插件,感觉看起来不错的样子,因而记下,原网址是:http://topic.csdn.net/u/20121 ...

  6. 一个不错的图片滑动展示插件 anythingslider

    一个不错的图片http://css-tricks.com/anythingslider-jquery-plugin/ DEMO演示: http://css-tricks.github.io/Anyth ...

  7. linux中内核的一个不错的参数somaxconn

    导读:在linux中,/proc/sys/net/core/somaxconn这个参数,linux中内核的一个不错的参数somaxconn 看下其解析: 对于一个TCP连接,Server与Client ...

  8. 一个不错的PPT,扁平化设计,开放资源,要的进来

    开了那么多的博客,没做啥资源贡献,今天共享一个不错的PPT模板.例如以下图所看到的,须要的话留下邮箱 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbGFp ...

  9. [置顶] ios 一个不错的图片浏览分享框架demo

    demo功能:一个不错的图片浏览分享框架demo.iphone6.1 测试通过.可以浏览图片,保存,微博分享到新浪,腾讯,网易,人人等. 注:(由于各个微博的接口有时候会有调整,不一定能分享成功.只看 ...

随机推荐

  1. JAVA进阶----ThreadPoolExecutor机制(转)

    ThreadPoolExecutor机制 一.概述 1.ThreadPoolExecutor作为java.util.concurrent包对外提供基础实现,以内部线程池的形式对外提供管理任务执行,线程 ...

  2. NET工厂模式架构

    NET工厂模式架构 最近项目的架构需要做调整优化,根据业务需要写了一个简单的工厂模式架构 项目介绍:整个系统分为三大平台(这里用A,B,C来标示),每个平台又细分为多个APP客户端(每个APP都有ap ...

  3. 【iOS】文件下载小记

    下载文件到NSURLConnection与NSURLSession两种,一种有恨悠久的历史了. 使用相对麻烦,后者是新出来的,添加了一些额外的功能. 一.NSURLConnection实现下载 TIP ...

  4. java解析String类型t复杂xml,多级节点,最好的例子

    需要用jar包 dom4j-1.6.1.jar 字符串xml如下: <root> <flw> <name>aa</name> <age>22 ...

  5. Jersey框架二:Jersey对JSON的支持

    Jersey系列文章: Jersey框架一:Jersey RESTful WebService框架简介 Jersey框架二:Jersey对JSON的支持 Jersey框架三:Jersey对HTTPS的 ...

  6. HYSBZ 2243(树链剖分)

    题目连接:http://acm.hust.edu.cn/vjudge/contest/view.action?cid=28982#problem/D 题意:给定一棵有n个节点的无根树及点权和m个操作, ...

  7. Linux中块设备驱动程序分析

    基于<Linux设备驱动程序>书中的sbull程序以对Linux块设备驱动总结分析. 開始之前先来了解这个块设备中的核心数据结构: struct sbull_dev {         i ...

  8. 对ORA-01795: 列表中的最大表达式数为 1000的处理(算法:计算数量及切割)

    /** * @category  * 原:strIDs in ( 100001,100002,100003,....................,110001,120001,130001,1400 ...

  9. PB数据库相关

    ---------------------------------------------------------------- 数据库画板: 一张表定义了主键或者唯一索引,则能够在Results视窗 ...

  10. EJB_消息驱动发展bean

    消息驱动发展bean Java信息服务(Java MessageService) Java 信息服务(Java Message Service,简称 JMS)是用于訪问企业消息系统的开发商中立的API ...