Batch file 如何批量裁剪多个图像
有没有办法让我可以通过一个命令裁剪出许多图片,或者gimp或photoshop中有没有任何选项 我知道图像的宽度是930,高度是800。我想把这些图像分割成两个新的图像,宽度应该等于930/2=465,高度应该保持不变Batch file 如何批量裁剪多个图像,batch-file,photoshop,gimp,resize-crop,Batch File,Photoshop,Gimp,Resize Crop,有没有办法让我可以通过一个命令裁剪出许多图片,或者gimp或photoshop中有没有任何选项 我知道图像的宽度是930,高度是800。我想把这些图像分割成两个新的图像,宽度应该等于930/2=465,高度应该保持不变 有人知道这个解决方案吗?我建议您使用ImageMagick,它在Windows、Linux和OSX上免费提供 例如,将当前目录中的所有JPEG裁剪为最大256像素乘以最大256像素 mogrify -resize 256x256 *.jpg 出于您的目的,假设输入文件名为a.j
有人知道这个解决方案吗?我建议您使用ImageMagick,它在Windows、Linux和OSX上免费提供 例如,将当前目录中的所有JPEG裁剪为最大256像素乘以最大256像素
mogrify -resize 256x256 *.jpg
出于您的目的,假设输入文件名为a.jpg
,您可能需要
convert a.jpg -crop 465x800+465+0 +repage a2.jpg
convert a.jpg -crop 465x800+0+0 +repage a1.jpg
a1.jpg和a2.jpg将是两部分
我不知道你是在Windows还是Linux上,但是你可以很容易地把它放在一个循环中,以完成你所有的图像
未经测试:
Linux
for f in *.jpg
do
newbase=$(basename "$f")
convert "$f" -crop 465x800+465+0 +repage "${newbase}_1.jpg"
convert "$f" -crop 465x800+0+0 +repage "${newbase}_2.jpg"
done
MS-DOS命令(我的技能在这里已经过时了)
在您尝试任何命令之前,请备份您的图像 假设您有一个包含图像(递归)的文件夹,只有图像,没有其他文件。。。 假设所有这些图像都足够大,可以分割。。。 您可以使用此脚本 我用它将3840x1080图像分割成2个1920x1080图像,用于双屏桌面背景图像
#!/bin/bash
files=$(find -type f)
basedir=$(pwd)
width=1920
height=1080
for f in $files
do
dir=$(dirname "$f")
cd $dir
file=$(basename "$f")
newfile=$(echo $file | cut -d. -f1)
convert "$file" -crop ${width}x${height}+0+0 +repage "${newfile}_1_of_2.jpg"
convert "$file" -crop ${width}x${height}+${width}+0 +repage "${newfile}_2_of_2.jpg"
cd $basedir
done
您可以尝试(不需要外部二进制文件):
对于批量图像裁剪,您可以查看命令。您是如何进行此操作的?
#!/bin/bash
files=$(find -type f)
basedir=$(pwd)
width=1920
height=1080
for f in $files
do
dir=$(dirname "$f")
cd $dir
file=$(basename "$f")
newfile=$(echo $file | cut -d. -f1)
convert "$file" -crop ${width}x${height}+0+0 +repage "${newfile}_1_of_2.jpg"
convert "$file" -crop ${width}x${height}+${width}+0 +repage "${newfile}_2_of_2.jpg"
cd $basedir
done
call crop.bat -source image.jpg -target image-left.jpg -percentage yes -right 50 -force yes
call crop.bat -source image.jpg -target image-right.jpg -percentage yes -left 50 -force yes