我有一个大文件夹,其中包含不同文件类型的图像(jpg + png)。我想遍历该文件夹并将所有 png 转换为 jpeg。例如 image323.png 将转换为 image323.jpg。
我还希望调整它们的大小,以便它们的大小相同,而不会丢失其比例/比例。
我知道我需要循环遍历它们,并且可能使用条件(如果文件以 png 结尾,则更改为 jpg),这将涉及使用 PIl,但不确定如何将它们放在一起。
最佳答案
最简单的方法是使用 ImageMagick,您可以使用 homebrew 将其安装在 macOS 上:
brew install imagemagick
先制作备份副本,然后只需进入图像所在目录并运行:
magick mogrify -format jpg *.png
如果您希望调整它们的大小,使它们最终都是 600 像素宽:
magick mogrify -format jpg -resize 600x *.png
如果您希望调整它们的大小,使它们最终都达到 300 像素高:
magick mogrify -format jpg -resize x300 *.png
如果您希望调整它们的大小,使它们最终的宽度不超过 600 像素,高度不超过 300 像素:
magick mogrify -format jpg -resize 600x300 *.png
如果您希望调整它们的大小,使它们最终都达到 600 像素宽和 300 像素高,即使这意味着扭曲原始宽高比:
magick mogrify -format jpg -resize 600x300\! *.png
根据您拥有的镜像数量、镜像大小以及 CPU 和磁盘子系统的速度,您可能会更好地使用 GNU Parallel,您可以按照相同的方式安装它:
brew install parallel
将所有 PNG 文件并行转换为 JPEG 的命令变为:
parallel --dry-run convert {} -resize 600x {.}.jpg ::: *png
关于python-3.x - 遍历文件夹并将 png 转换为 jpg,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56564577/