使用imageMagick生成@2x图片

ImageMagick

1). 安装与更新

(macos)安装ImageMagick:brew installimagemagick
(macos)更新: brew upgrade imagemagick

2). 基本用法

格式转换 convert 2.png 22.jpg

尺寸转换成22x22 convert -resize 22x22 img1.png resize.png

旋转: convert -rotate 90 img1.png rotated.jpg

获取尺寸 identify -format "%[fx:w]x%[fx:h]" rotate.jpg #得到 334x368%

编写生成2x图片的脚本(尺寸缩放到2/3)

实现效果: 先再脚本所在目录A下创建output文件夹,然后将所有图片复制到output文件夹中并添加@3x后缀,最后生成@2x的图片。

#!/bin/bash

#cd /Users/tyrad/Desktop/mm/test

cd  `dirname $0`

mkdir output

for i in `ls *.png` ; do cp $i output/`echo $i | sed 's/\.png//'`@3x.png ; done

for i in `ls *.png`
do

w=$(identify -format "%w" ${i})
h=$(identify -format "%h" ${i})

#shell计算中使用除法,基本默认上都是整除
#使用bc工具,sclae控制小数点后保留几位
w2=`echo "scale=2; $w/3*2" | bc`
h2=`echo "scale=2; $h/3*2" | bc`

#to 2x
convert -resize ${w2}x${h2}  ${i}  output/`echo $i | sed 's/\.png//'`@2x.png

done

优化:可以直接使用百分比来缩放

#!/bin/bash

cd  `dirname $0`

mkdir output 

for i in `ls *.png` ; do cp $i output/`echo $i | sed 's/\.png//'`@3x.png ; done

for i in `ls *.png` ; do convert -resize '66.6667%!'  ${i}  output/`echo $i | sed 's/\.png//'`@2x.png ; done 

给与脚本运行权限,双击运行即可。

参考:

http://www.netingcn.com/imagemagick-resize.html

https://www.cnblogs.com/ITtangtang/p/3951240.html

https://www.zhihu.com/question/20816420/answer/22984930

你可能感兴趣的:(使用imageMagick生成@2x图片)