如何在 Linux 终端中操作图像

是否厌倦了不断打开您最喜欢的图像编辑器进行简单的裁剪、调整大小或更改文件格式? 也许您需要批量或在软件中轻松执行这些任务?

以下是如何使用 Linux 转变 工具,它允许您通过命令行使用终端执行所有这些操作,等等。

安装 ImageMagick

转变 工具是流行的一部分 图像魔术师 包,您需要安装它。 检查是否使用以下命令安装了 ImageMagick:

convert --version

如果显示 ImageMagick 的版本号,那么它已经安装,您可以进入下一部分。 否则,使用以下命令安装 ImageMagick:

sudo apt-get -y install imagemagick

获取图像信息

您可以使用以下命令获取任何图像的基本信息:

convert <FILENAME> -print "Type: %m
Size: %b
Dimensions: %wx%h
" /dev/null

这将为您提供图像 mime 类型、以 KB 为单位的文件大小及其以像素为单位的尺寸,并且看起来类似于:

Type: jpeg
Size: 35.6KB
Dimensions: 640 x 480

更改图像文件格式

您可以通过以下方式轻松更改任何图像的文件格式:

convert <SOURCE_FILE> -append <DEST_FILE>

此命令将获取 文件,将其转换为正确的格式并将新图像保存在 您必须使用正确的文件扩展名(即 JPG、GIF、PNG 等) DEST_FILE 它会自动检测将图像转换为哪种格式。

在 Linux 中调整图像大小

如果您想调整图像大小,或者快速生成缩略图,您可以使用 -调整大小 选项。 运行以下命令:

convert -resize 25% <SOURCE_FILE> <DEST_FILE>

这将调整图像的大小,并在 DEST_FILE 处创建一个新的图像文件,该文件是源图像尺寸的 25%。 请注意,上述命令并没有将尺寸缩小 25%,而是生成一个 25% 尺寸的新图像。 如果需要放大图像,可以将百分比调整为大于 100%。

除了按百分比调整大小,您还可以使用以下命令指定特定尺寸:

convert -resize 1024x768 profile.jpg profile_large2.jpg

上述命令会将源图像的大小调整为 1024×768 像素,并将新图像保存在 DEST_FILE 中。

裁剪图像

如果您需要从顶部或侧面取一点,您可以使用以下命令裁剪图像:

convert <SOURCE_FILE> -crop 640x250+0+0 <DEST_FILE>

为了 example,如果源图像为 640×480 像素,则上述命令将导致 DEST_FILE 为 640×250 像素的图像,其中包含图像的上半部分,而下半部分被裁剪掉。 这 +0+0 在上面的命令中指定图像的最左上角,或者换句话说,从哪里开始裁剪。

使用上述 example,您可以使用以下命令保存图像的下半部分:

convert <SOURCE_FILE> -crop 640x250+0+230 <DEST_FILE>

这将在源图像中的 0x230 处开始裁剪,裁剪掉上半部分,只留下下半部分。

旋转图像

您甚至可以使用以下命令旋转图像:

convert <SOURCE_FILE> -rotate 90 <DEST_FILE>

上述命令会将源图像顺时针旋转 90 度并将生成的图像保存在 DEST_FILE 中。

为图像添加标题

另一个出色的功能 转变 工具能够立即为图像添加标题,包括在图像中放置标题的位置,以及要使用的字体系列、大小和颜色。 使用以下命令为图像添加标题:

convert profile.jpg -pointsize 14 -font helvetica -fill yellow -draw 'text 270,160 "Warm Regards from the Family" ' profile_cap.jpg

上面的命令将使用黄色字体 Helvetica 14pt 在源图像上放置“来自家庭的温暖问候”的标题,图像的左上角从 270×160 像素开始,并将结果保存在 DEST_FILE 中。

请注意,您必须小心 -画 选项,它必须以单引号开头,后跟最左上角的位置,然后是用双引号括起来的标题文本。

有大量可用的颜色列表,如果需要,您可以使用以下命令列出计算机支持的所有颜色:

cb:>showrgb

字体的选​​择因您的计算机而异,但通常使用的所有标准字体都会在那里。 每个操作系统都有点不同,但在 Ubuntu 中 example,字体位于 /usr/share/字体 目录并包含您可以在上述命令中使用的所有可用系统字体的列表。

混合和匹配图像编辑命令

您可以将上述任何选项混合并匹配到一个命令中以提高效率。 为了 example,如果您有一个方向错误的大图像,大小为 2571×1200 像素,并且您想要生成 300×200 缩略图,您可以使用以下命令:

convert <SOURCE_FILE> -rotate 90 -crop 1200x800 -resize 25% <DEST_FILE>

以上将首先将图像旋转 90 度,使新大小为 1200×2571 像素。 接下来,它将从底部裁剪掉多余的部分,使其高度仅为 800 像素,最后将图像大小调整为其原始大小的 25%,最终生成 300×200 像素大小的缩略图。

批处理图像目录

是否有要使用相同命令处理的整个图像目录? 在 Linux 中没问题。 为了 example,您可能希望通过将其大小调整为当前工作目录的 30% 来生成当前工作目录中所有图像的缩略图:

mkdir thumbs
for i in `ls | grep .jpg$`; do convert $i -resize 30% thumbs/$i; done

上面的命令将遍历当前目录中所有扩展名为 .jpg 的文件,将它们调整为它们大小的 30%,然后将生成的缩略图放在 /大拇指/ 子目录。

图像处理变得简单!

通过本教程,您希望能够通过终端轻松轻松地操作图像,并使用单个命令轻松批处理整个目录。

你已经了解了 ImageMagick 的内容 转变 工具,以及如何轻松更改文件格式、调整大小、裁剪、旋转和为图像添加标题。 还有大量可用的附加功能——试试 转换-帮助 完整列表的选项。