美文网首页
Pngquant-在mac上的使用

Pngquant-在mac上的使用

作者: 放羊娃华振 | 来源:发表于2019-09-29 15:00 被阅读0次

Pngquant是一个十分有效的png图片压缩工具。相信很多伙伴都用过tinypng这个网站去压缩图片,但是这个服务是有数量的限制的。我们这里就在mac电脑上实现一个类似tinypng的服务。
一、体验tinypng:
体验地址:https://tinypng.com/
二、自己在mac上实现图片压缩
1、下载pngquant:
地址:https://pngquant.org/
2、解压下载后的zip文件:

image.png
3、编写调用的代码。
代码一:pngquantWrapper
#!/bin/bash
if [ -z "$1" ]; then
        echo usage: compressimg [file]
        echo This tool will apply common image optimization techniques to the given file.
        exit
fi
OLDSIZE=`ls -l $1 | awk '{ print $5}'`

./pngquant --force --skip-if-larger $1 --output $1.tmp

if [ -f $1.tmp ]; then 
mv $1.tmp $1
fi 

NEWSIZE=`ls -l $1 | awk '{ print $5}'`

# show final stats
let RESULT=100-$NEWSIZE*100/$OLDSIZE
echo $1 $NEWSIZE'/'$OLDSIZE ' - ['$RESULT'% COMPRESSED]'

代码二:PNGCompress

#!/bin/bash
if [ -z "$1" ]; then
    echo usage: compressimg [directory or file]
    exit
fi

# apply the compressimg script to every image file within the given directory
# if the input is a single file, execute the script on it
OLDSIZE=`du -sk $1 | awk '{ print $1}'`
# echo 'OLDSIZE'
# echo $OLDSIZE
INPUTTYPE="Directory"

# execute compression
DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
if [ -d $1 ]; then
    find $1 -type f \( -name "*.png" \) -exec $DIR/pngquantWrapper '{}' \;
else
    INPUTTYPE="File"
    $DIR/pngquantWrapper $1
fi

NEWSIZE=`du -sk $1 | awk '{ print $1}'`
let RESULT=100-$NEWSIZE*100/$OLDSIZE
echo ''
echo $1 Finished.
echo 'NEWSIZE/OLDSIZE' $NEWSIZE'/'$OLDSIZE 
echo 'TOTAL:'$RESULT'% COMPRESSED.'
echo ''

4、使用方式:

sh PNGCompress PNG图片目录的完整路径

6、运行结果:

...
/Users/dzh/Desktop/test_png/device-2019-08-19-200146.png 292770/292770  - [0% COMPRESSED]
’是目录‘

/Users/dzh/Desktop/test_png Finished.
NEWSIZE/OLDSIZE 1404/2060
TOTAL:32% COMPRESSED.

如上效果,可以看到压缩该图片可以减少32%的体积,是不是十分的优秀?

相关文章

  • Pngquant-在mac上的使用

    Pngquant是一个十分有效的png图片压缩工具。相信很多伙伴都用过tinypng这个网站去压缩图片,但是这个服...

  • 自定 Mac-为您自己设置“屏幕使用时间”

    在 Mac 上为您自己设置“屏幕使用时间” 在 Mac 上,打开“屏幕使用时间”以了解您的 Mac 和其他设备使用...

  • 自定Mac-在 Mac 上运行 Windows

    在 Mac 上运行 Windows 使用启动转换,您可以在 Mac 上安装和使用 Windows。 “启动转换助理...

  • ios之秒学swif入门手册

    mac笔记本基本操作使用 在mac上optoin代替win上的alt,command代替windows键 mac上...

  • 在mac上使用win

    mac上面使用win的office全家桶会存在各种各样的问题。 尤其最近在做需求文档 二百到三百页的word文档在...

  • Vapor在mac上的使用

    Vapor是一个基于swift的服务端框架 安装 安装完成后,可以使用vapor --help命令查看帮忙 使用 ...

  • git在mac上的使用

    git 是什么 git呢,不是github,是一个版本控制系统,就是类似于SVN之类。最初用于Linux系统的源码...

  • MariaDB在Mac上的使用

    启动 mysql.server start 停止 mysql.server stop 连接数据库 mysql -u...

  • 源代码管理

    SVN的使用 SVN在Mac上使用Xcode+Cornerstone GIT的使用

  • 基础知识-触控ID

    在 Mac 上使用触控 ID 如果 Mac 配备了触控 ID,您可以使用它来解锁 Mac、授权从 iTunes S...

网友评论

      本文标题:Pngquant-在mac上的使用

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