700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > ubuntu 图片格式批量转换 批量处理

ubuntu 图片格式批量转换 批量处理

时间:2023-02-07 02:59:15

相关推荐

ubuntu 图片格式批量转换 批量处理

可以用 PhotoShop 或 GIMP 这样的软件来处理图像。没人禁止你这么做,就像没人禁止你用大炮打蚊子一样。不过依我看,打蚊子最好还是用电蚊拍,而要处理大量图像的话,我推荐 ImageMagick。

先来介绍一下 ImageMagick。

ImageMagick(简称 IM)是一个支持 GPL 协议的开源免费软件包。

它由一组命令行工具组成的。

它可以对超过 100 种的图像格式(包括 DPX, EXR, GIF, JPEG, JPEG-2000, PDF, PhotoCD, PNG, Postscript, SVG, 和 TIFF等等),进行读、写、编辑和转换的操作。

它支持多数主流操作系统,其中包括 UNIX、Mac OS X 和 Windows。

在ubuntu16.04里面是自带的

IM 的主页是 / 。你可以在那里下载它的源代码或可执行文件。

一般人可以直接下载它的 Windows 发行版。地址是:/script/binary-releases.php#windows 。

有 6 种格式可供选择,如果你不清楚自己要什么,我建议你下载 Q16 的 static 版。

先来看看 ImageMagick 能做些什么:

1、批量旋转、分割,并顺序编号

2、自动批量切除白边(auto-crop)

3、自动倾斜校正(deskew)

4、批量加标注

5、批量去标注

6、批量加水印

7、批量去水印

一、最基本的格式转换

下面,我将结合与扫书制书有关的图像操作,来说明 IM 的用法。

前面已经说过,IM 由一组命令行工具组成,具体来说也就是 convert、mogrify、composite、montage、identify、compare、display、animate、stream、import 和 conjure,这 11 个命令。

其中最常用的,是 convert 和 mogrify。

1、将 a.gif 转为 png 格式

convert a.gif a.png

请注意,convert 命令的基本格式为

convert 源文件 [参数] 目标文件

在上面的命令中,源文件是 a.gif,目标文件是 a.png。由于这是最简单的格式转换,所以不需要中间的参数。

convert 常用于单个文件的转换。上面的命令是它最基本的用法。

前面说过 IM 支持超过 100 种的文件格式。

下面的命令,可以列出 IM 所支持的所有格式:

identify -list format

2、批量文件的格式转换

mogrify -path newdir -format png *.gif

这个命令的作用,是将当前目录下的所有 gif 文件,转换为 png 格式,并将其存放在 newdir 目录下。

mogrify 是用于批量处理文件的命令。它的基本格式是这样的:

mogrify 参数 源文件

mogrify 支持基本的通配符,例如你可以用 a*.png 指代所有以 a 打头的 png 文件,诸如此类。

再回到刚才的命令:

mogrify -path newdir -format png *.gif

这里的 -path 和 -format 是两个可选择的参数。

-format 指定输出的文件格式,而 -path 则指定输出的文件目录。

我在这里先强调一下:如果不加 -path 参数的话,mogrify 有可能会覆盖你的源文件,因此强烈推荐在每个 mogrify 命令里都加上 -path 参数,并在执行之前,先检查整个命令正确性。

二、图像的缩放:使用 -resize

IM 有好几种缩放图像的方法,在这里我只讲最基本的 resize 命令。

将一个200x304大小的图像缩小为100x152(长宽各缩短一半)。

convert page200.png -resize 100x152 page100.png

上面的 100x152,指定了目标文件的长和宽。

你也可以只指定目标文件宽度,这样它的高度会等比例放大:

convert page200.png -resize 100 page100.png

或者只指定高度:

convert page200.png -resize x152 page100.png

以上三句命令,其结果都是一样的。

你可以用 identify 命令来显示图像的尺寸以及其它一些信息:

identify page100.png

其结果为:

page100.png PNG 100x152 100x152+0+0 8-bit DirectClass 17.9kb

最后,你还可以通过指定百分比来缩放图像:

convert page200.png -resize 50% page100.png

convert page200.png -resize 150% page300.png

批量缩放图像

mogrify -path newdir -resize 200% *.png

这句命令的意思是将当前目录中所有的 png 文件都放大一倍,并存放到 newdir 目录中。

请注意,如果没有 -path 语句,新生成的 png 文件将会覆盖原始文件。因此,在使用 mogrify 命令时,-path 参数几乎是必须的。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。