Shell-Scripts/iphone-photo-format.sh

54 lines
1.5 KiB
Bash
Executable File

#!/bin/bash
# 将 iPhone 拍摄的照片转换格式为 jpg 并处理 exif 信息
# 创建文件夹 output
mkdir -p output
# 遍历当前文件夹下的所有 heic 和 png 文件
for file in *.{HEIC,heic,PNG,png,JPG}; do
# 跳过不存在的文件
if [[ ! -f "$file" ]]; then
continue
fi
# 获取图片名并创建新的文件名
filename=$(basename "$file")
extension="${filename##*.}"
new_extension="jpg"
new_filename="${filename%.*}.$new_extension"
# 检查输出文件是否已存在
if [[ -e "output/$new_filename" ]]; then
echo "Skipping existing file: output/$new_filename"
continue
fi
if [[ "${filename##*.}" == "png" || "${filename##*.}" == "PNG" ]]; then
# 使用 ImageMagick 直接处理 PNG 图片
magick "$file" -gravity center -quality 80 output/$new_filename
else
# 判断图片是竖屏的还是横屏的
# 使用 identify 命令判断图片的宽度和高度
width=$(identify -format "%w" "$file")
height=$(identify -format "%h" "$file")
# 指定图片大小
if [ $width -ge $height ]; then
new_size="2000x1500"
else
new_size="1500x2000"
fi
# 使用 ImageMagick 处理图片
magick "$file" -gravity center -resize "$new_size^" -extent "$new_size" -quality 80 output/$new_filename
fi
# 使用 exiftool 抹掉图片的 gps 信息,并设置作者名称为 Paul
exiftool -overwrite_original -gps:all= -artist="奇趣保罗" -CreatorTool= "output/$new_filename"
echo "\n\n"
done