在Linux上为网络调整和优化图像的5种方法

181 阅读4分钟

调整大小、存档和分割图像,使大文件更好地用于互联网。

曾几何时,5MB是一个电子邮件附件的合理最大尺寸。今天,一张照片很容易就能达到5MB。相应地,最大的附件大小已经增加到,比如说,25MB。但当然,文件大小也越来越大,所以最终附件的限制也会增加。这是一个无休止的循环,在数字世界中很常见:工具是为今天的数据建立的,而今天的数据在复杂性和大小上增加,直到工具被修改和改进。你必须包含数据,最好是用最小的包装,这样在线分享数据对每个人来说都会更快。这里有五种为互联网优化图像的方法。

什么尺寸的图片适合网络?

首先,在讨论数字图像时,有两种 "尺寸"。图像大小表示当你在屏幕上看一幅图像时,它有多少像素的宽度和高度。文件大小代表图像在硬盘或SD卡上使用多少字节。正是文件大小限制了在互联网上发送东西的容易程度,因为我们都有来自互联网供应商和基础设施的不同带宽分配。当然,图像尺寸越大,文件尺寸也越大,所以这两者是相关的。

为了避免混淆,在本文中,我用 "图像大小 "一词来指图像的像素宽度和高度,用 "文件大小 "一词来指图像文件在硬盘上占用的字节数。

很难确切知道互联网上或通过电子邮件发送的照片的 "合理 "图像大小和文件大小是什么。不过,有一些合理的期望。如果你把照片发到一个网站上,无论是你自己的博客还是社交媒体,大多数人可能会以与商店里的任何东西一致的分辨率查看照片。你的屏幕尺寸,至少在2022年,可能是1920×1080(高清晰度,或高清)或左右。那么,你的照片可能不需要比1920乘1080大。即使是屏幕比你大一倍的人,也可以让你的照片占到他们屏幕的一半,这可能就足够了。

方程的另一部分是文件格式。许多文件格式,如JPEG和PNG,意味着一定程度的压缩。压缩得越多,文件大小就越小,但压缩得太多会使图像变得模糊不清。我喜欢WEBP格式,它的质量往往比JPEG好,而且文件大小较小。它得到了图像应用程序和所有主要网络浏览器的良好支持。

1.用Krita调整图片的大小

开源程序Krita在技术上是一个数字绘画程序,但它恰好也是一个非常棒的照片编辑器。我用它来加载一张照片,把它缩小到一个合理的尺寸,然后把它保存为网络优化的格式。

三个简单的步骤:

  1. 进入 "文件"菜单,选择 "打开",在Krita中打开你的图片。

  2. 进入图像菜单,选择缩放图像到新尺寸。键入你想调整图像大小的最大宽度或高度。

  3. 进入文件菜单,选择另存为,将图像保存为WEBP图像。Krita很聪明,只要你在保存文件时使用.webp 的扩展名,就会切换到WEBP(例如:myphoto.webp 。)

Resize an image with Krita

Krita可用于Linux、Windows和macOS。

2.用GIMP调整图像的大小

开源的GNU图像处理程序(GIMP)是一个照片编辑器,它可以调整图像的大小。

三个简单的步骤。

  1. 进入 "文件"菜单,选择 "打开"来打开你的图像。

  2. 转到图像菜单,选择缩放图像。键入你想调整图像的最大宽度或高度。

  3. 到 "文件"菜单,选择 "导出",将图像保存为WEBP图像。该应用程序很聪明,只要你在保存文件时给出.webp 的扩展名,就会使用WEBP(例如,myphoto.webp 。)

Resize image in GNU Image Manipulation Program

GNU图像处理程序(GIMP)可用于Linux、Windows和MacOS。

3.用ImageMagick调整图像的大小

ImageMagick套件是一套终端命令,可以操作图像,甚至不用在用户界面上打开文件。它是一种快速有效的方法,可以一次性修改大量的图像

一个简单的步骤。

$ convert 2022-09-09-PHOTO.JPG -scale 1920x myphoto.webp

在这个命令中,convert 是ImageMagick执行转换的组件,而-scale 是调整大小的选项。1080^ 参数指定转换后的图像必须是1029像素宽,而高度(在x 字符后留空)是自动计算的。

ImageMagick可用于Linux、macOS和Windows。

4.归档一个图像

有时你可能不想调整图像的大小,但你仍然需要减少文件的大小(文件在硬盘或SD卡上占用的字节数)。来自消费类相机的图像,如手机中的图像,往往已经被高度压缩,在不调整大小的情况下,留给计算机优化的空间并不多。然而,专业相机的拍摄格式往往假定你不需要或只需要最小的压缩,这意味着你可以用一个好的存档工具在不损失质量的情况下减少图像的文件大小。

有几种存档工具,许多可能已经安装在你的电脑上。例如,如果你的电脑可以创建ZIP档案,那么你就已经有了ZIP压缩算法。

两个简单的步骤。

  1. 在你的电脑上打开一个文件管理器,找到你要压缩的照片。

  2. 在照片上点击右键,选择压缩(在某些操作系统上,这可能被称为存档。)

只要你的图像中有足够的未压缩数据,就可以进行压缩,归档版本的文件大小应该比原始文件小。你可以通过互联网发送归档文件,收件人可以通过以下方式解除图像的归档。

Archiving a file

7-zip是一个优秀的存档工具,适用于Linux、Windows和MacOS

5.分割图像

如果你是一个Linux用户,你可以使用split 命令将一个图像切割成几个不同的特定文件大小的碎片。然后你可以把这些碎片发给别人,他们可以用cat 命令重新组装文件。

假设文件2022-09-09-PHOTO.JPG 是6.7MB。你可以把它分成四块,每隔2MB拆开。在你的电脑上。

$ split 2022-09-09-PHOTO.JPG --bytes 2M
$ ls -l --human
[...] 6.7M Sep  7 14:50 2022-09-09-PHOTO.JPG
[...] 2.0M Sep  7 14:54 xaa
[...] 2.0M Sep  7 14:54 xab
[...] 2.0M Sep  7 14:54 xac
[...] 667K Sep  7 14:54 xad

在收件人的电脑上。

$ cat xaa xab xac xad > myphoto.jpg

节省空间

在文件大小和载体容量之间的永恒斗争中,我们很可能总是不得不做出让步。使用开源工具通过有损压缩、无损压缩归档或通过巧妙的变通来节省空间,是节省空间和最大限度地提高通信速度的好方法。当然,一张照片胜过千言万语,但它不一定要占用一千兆字节!"。