优化图像以适应最大文件大小
Optimizing image to fit max file size
我需要创建一个简单的应用程序,允许我将图像拖到上面,它会优化下面的图像一定的文件大小。
我目前在 Photoshop 中有一个漫长的过程,我必须一次保存多张图像,重新打开每张图像,然后导出为正确的文件大小。虽然尺寸总是相同的。所以 300x300 将始终低于 40kbs,而 100x600 将始终是 35kbs。
即使我 运行 通过 Photoshop 以完全相同的方式处理图像。我只是希望有一个 faster/automated 过程,但我很难找到一个过程。
有什么想法吗?
提前致谢。
注意:我不想更改图像大小(尺寸),只更改文件大小 (kbs)。
您可以使用 ImageMagick 来做到这一点,它安装在大多数 Linux 发行版上并且适用于 macOS 和 Windows。它仅适用于 JPEG(因为它允许以图像大小换取质量),而 PNG 不适用 - 至少明确地如此。
因此,假设您的图像为 300x300,并且在 161kB 时特别大,因为它是不可压缩的随机噪声:
-rw-r--r-- 1 mark staff 161310 15 Feb 16:56 input.jpg
您可以在终端(或命令提示符,如果在 Windows 下)中使用此命令将其减少到您想要的 40kB:
magick input.jpg -define jpeg:extent=40kb result.jpg
结果是 39kB:
-rw-r--r-- 1 mark staff 39119 15 Feb 16:58 result.jpg
对于本地使用,我会设置 gulp 并按照以下方式使用 npm 包(任何可以完成您需要做的事情的包):
https://www.npmjs.com/package/gulp-image-resize - 调整图片大小
https://www.npmjs.com/package/gulp-imagemin - 压缩图像(我知道您可以使用大小参数来定位所需的文件大小,至少对于 jpeg 是这样)
但是向您展示如何逐步设置所有内容超出了这个答案的范围,所以让我粗略地概述一下您需要做的事情:
- 安装node.js
- 安装gulp
- 安装合适的包管理器
- 配置 gulp 从特定文件夹抓取图像并手动或自动将它们转换到您想要的 "output" 文件夹。
如果您想走这条路,我建议您从这里开始了解更多关于 gulp 的信息:
我需要创建一个简单的应用程序,允许我将图像拖到上面,它会优化下面的图像一定的文件大小。
我目前在 Photoshop 中有一个漫长的过程,我必须一次保存多张图像,重新打开每张图像,然后导出为正确的文件大小。虽然尺寸总是相同的。所以 300x300 将始终低于 40kbs,而 100x600 将始终是 35kbs。
即使我 运行 通过 Photoshop 以完全相同的方式处理图像。我只是希望有一个 faster/automated 过程,但我很难找到一个过程。
有什么想法吗?
提前致谢。
注意:我不想更改图像大小(尺寸),只更改文件大小 (kbs)。
您可以使用 ImageMagick 来做到这一点,它安装在大多数 Linux 发行版上并且适用于 macOS 和 Windows。它仅适用于 JPEG(因为它允许以图像大小换取质量),而 PNG 不适用 - 至少明确地如此。
因此,假设您的图像为 300x300,并且在 161kB 时特别大,因为它是不可压缩的随机噪声:
-rw-r--r-- 1 mark staff 161310 15 Feb 16:56 input.jpg
您可以在终端(或命令提示符,如果在 Windows 下)中使用此命令将其减少到您想要的 40kB:
magick input.jpg -define jpeg:extent=40kb result.jpg
结果是 39kB:
-rw-r--r-- 1 mark staff 39119 15 Feb 16:58 result.jpg
对于本地使用,我会设置 gulp 并按照以下方式使用 npm 包(任何可以完成您需要做的事情的包):
https://www.npmjs.com/package/gulp-image-resize - 调整图片大小
https://www.npmjs.com/package/gulp-imagemin - 压缩图像(我知道您可以使用大小参数来定位所需的文件大小,至少对于 jpeg 是这样)
但是向您展示如何逐步设置所有内容超出了这个答案的范围,所以让我粗略地概述一下您需要做的事情:
- 安装node.js
- 安装gulp
- 安装合适的包管理器
- 配置 gulp 从特定文件夹抓取图像并手动或自动将它们转换到您想要的 "output" 文件夹。
如果您想走这条路,我建议您从这里开始了解更多关于 gulp 的信息: