May*_*hux 54 command-line image-processing
我想使用命令行工具裁剪图像,仅指示四个方向的裁剪像素(与我们在 LibreOffice 中裁剪的方式相同)
例如:
crop image.jpg -top 5px -bottom 7px -right 14px -left 3px
Run Code Online (Sandbox Code Playgroud)
有没有这样的工具(不是 GUI)?
May*_*hux 57
这是使用convertfrom image magick pack的解决方法。
sudo apt-get install imagemagick
Run Code Online (Sandbox Code Playgroud)
为一张图片 image.jpg
$ identify image.jpg
image.jpg JPEG 720x482 720x482+0+0 8-bit DirectClass 100KB 0.000u 0:00.009
Run Code Online (Sandbox Code Playgroud)
如上图,输入图像为 720x482px。
现在要进行裁剪,您必须确定两个因素:
现在回到image.jpg上面的图片,我想裁剪:
那么你可以用(widthx height+ left+ top/ wx h+ l+t格式)来做到这一点:
convert image.jpg -crop 703x470+3+5 output.jpg
Run Code Online (Sandbox Code Playgroud)
现在
$ identify output.jpg
output.jpg JPEG 703x470 703x470+0+0 8-bit DirectClass 102KB 0.000u 0:00.000
Run Code Online (Sandbox Code Playgroud)
Mar*_*oma 22
如果你想修剪掉白色区域,imagemagick有一个特殊的命令:
convert -trim input.jpg output.jpg
Run Code Online (Sandbox Code Playgroud)
Jac*_*ijm 11
要创建“用户友好”cli- 选项,可以使用以下脚本。只需运行以下命令:
<script> <image> <crop_left> <crop_right> <crop_top> <crop_bottom>
Run Code Online (Sandbox Code Playgroud)
它创建了一个裁剪图像image.jpeg,image[cropped].jpeg在同一目录中命名。
<script> <image> <crop_left> <crop_right> <crop_top> <crop_bottom>
Run Code Online (Sandbox Code Playgroud)
该脚本使用 imagemagick
sudo apt-get install imagemagick
Run Code Online (Sandbox Code Playgroud)将上面的脚本另存为crop_image(无扩展名)在~/bin.
source ~/.profile以使目录显示在$PATH.现在只需按其名称运行脚本,如上所述,例如:
crop_image /path/to/image.jpg 20 30 40 50
Run Code Online (Sandbox Code Playgroud)
空格没问题,只要在这种情况下使用引号:
crop_image '/path/with spaces in the name/to/image.jpg' 20 30 40 50
Run Code Online (Sandbox Code Playgroud)
小智 5
使用mogrify -crop <W>x<H>+<X>+<Y> <files>。
小心:文件会被覆盖,恕不另行通知。如果需要,添加-path指定输出目录的选项以防止出现这种情况。
例如:mogrify -crop 256x256+10+5 images/*.jpg将文件夹中的每个图像裁剪images为 256x256 图像,从顶部开始 10 个像素,从侧面开始 5 个像素。它将覆盖旧图像。
如果Argument list too long由于尝试一次转换多个图像而出现错误,只需将图像路径用单引号引起来,以防止 bash 扩展它:mogrify -crop 256x256+10+5 'images/*.jpg'(mogrify 将自行扩展)
小智 5
该crop命令需要 4 件事。要了解它,请使用您要裁剪的图像。现在,想象一下在图像上,您正在绘制一个您想要保留的大小的矩形。该矩形之外的区域将被消除、裁剪。矩形不得倾斜,即顶部必须水平。
现在,记下这 4 件事:
因此,您现在拥有 W、H、L 和 T 值。到现在为止还挺好。要了解像素,您可以在 Ubuntu 中安装krule工具。很有用。
现在,打开终端并转到存储图像的文件夹。使用以下命令并正确放置 W、H、L 和 T 的值:
convert input.jpg -crop WxH+L+T output.jpg
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
58321 次 |
| 最近记录: |