WebP格式转换

Koucw Lv3

WebP‌是一种同时提供有损压缩与无损压缩的图片文件格式,派生自视频编码格式VP8,由Google在购买On2 Technologies后发展出来,并以BSD授权条款发布。WebP格式的目标是减少文件大小,同时保持与JPEG格式相同的图片质量,从而减少图片在网络上的传输时间。

WebP在保证图片质量的前提下大幅压缩图片大小,可大幅加快博客的加载速度,同时减少流量支出

命令

简单

1
/opt/homebrew/bin/cwebp "$f" -o "${f%.*}.webp"

使用该命令转换之后在 iPhone 中拍摄的竖直图会变为横躺样式

因为 iPhone 拍摄的照片,其实方向就是平躺的,只是其元数据 EXIF 中包含了旋转信息,告诉了打开该图片的查看器应该旋转一个什么角度,但是转换为WebP之后,该EXIF似乎不能被很好支持

具体原因可参考iPhone 照片转换 WebP 格式的奥秘

进阶

首先需要安装exiftoolimagemagick

1
2
brew install exiftool
brew install imagemagick

进阶版命令,大致原理是使用exiftool读取照片EXIF方向信息,使用imagemagick根据EXIF方向信息旋转照片,清除EXIF信息,再进行WebP的转换

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#!/bin/bash
for f in "$@"
do
echo "$f"
IMAGE_FILE="$f"
TEMP_IMAGE=".${FILENAME}_temp.${EXTENSION}"

# 检测旋转信息并旋转图片
ORIENTATION=$(/opt/homebrew/bin/exiftool -Orientation -n -S "$IMAGE_FILE" | cut -d: -f2 | tr -d ' ')

if [ "$ORIENTATION" != "" ]; then
# 根据旋转标志旋转图像
case "$ORIENTATION" in
1)
ROTATE_DEGREES="0"
;;
3)
ROTATE_DEGREES="180"
;;
6)
ROTATE_DEGREES="270"
;;
8)
ROTATE_DEGREES="90"
;;
*)
ROTATE_DEGREES="0"
echo "No rotation needed or unsupported rotation tag."
;;
esac

# 旋转图片
/opt/homebrew/bin/magick "$IMAGE_FILE" -rotate $((0 - $ROTATE_DEGREES)) "$TEMP_IMAGE"
fi

# 删除旋转 EXIF 信息
exiftool -Orientation= -overwrite_original "$TEMP_IMAGE"
/opt/homebrew/bin/cwebp "$TEMP_IMAGE" -o "${f%.*}.webp"
rm "$TEMP_IMAGE"
done

自动操作

打开自动操作APP,新建快速操作

截屏2024-11-15 12.50.37

拖入运行shell脚本传递输入一定要选作为自变量,其他设置可参考下图自定义

截屏2024-11-15 12.52.55

写入脚本内容(或使用上方进阶命令)

1
2
3
4
5
for f in "$@"
do
echo "$f"
/opt/homebrew/bin/cwebp "$f" -o "${f%.*}.webp"
done

选中图片后在快速操作菜单即可进行快速WebP转换

Platypus

使用Platypus 可以将脚本转换为原生应用,实现将图片拖放后自动转换为WebP。

截屏2024-11-15 12.33.36
Brew安装Platypus,或者直接下载安装

1
brew install --cask platypus

点击+New新建脚本,并写入脚本内容

1
2
3
#!/bin/bash

/opt/homebrew/bin/cwebp "$1" -o "${1%.*}.webp"

进阶命令自行测试一下,我使用快速操作很方便,并且可以批量操作,未进一步测试

截屏2024-11-15 12.37.44
Interface 选择Droplet,点击Accept dropped items后的setting

截屏2024-11-15 12.42.41
勾选Accept dropped files,下面的+/-无法点击,分别拖入jpg图片和png图片即可添加两个后缀,其他照片同理

将图片拖到Generic Application即可添加APP图标,图标可以到macOSicons 下载

Create App即可生成APP

引文:

目录
WebP格式转换