首页 > 解决方案 > 将图像水平分成两个不相等的部分?

问题描述

我有以下图像:

在此处输入图像描述

我想使用 ImageMagick 将其水平拆分为 40-60% (LR) 的两个不相等的部分。我该怎么做呢?

标签: imagemagickimagemagick-convert

解决方案


您可以在 ImageMagick 6 中执行以下操作。将图像读入 MPR 内存并删除原始图像。然后使用 MPR 副本用重力向西裁剪 40% 一次,然后用重力向东再次裁剪 60%(即从左侧裁剪 40%,然后从右侧裁剪 60%)。写入这些图像,然后退出而不输出,即 null:

Unix 语法:

convert red_rect.png +repage -write mpr:img +delete \
\( mpr:img -gravity west -crop 40x100%+0+0 +repage +write left.png \) \
\( mpr:img -gravity east -crop 60x100%+0+0 +repage +write right.png \) \
null:

对于 Windows,

convert red_rect.png +repage -write mpr:img +delete ^
( mpr:img -gravity west -crop 40x100%+0+0 +repage +write left.png ) ^
( mpr:img -gravity east -crop 60x100%+0+0 +repage +write right.png ) ^
null:

(在 .bat 文件中,将 % 加倍为 %%)

(对于 ImageMagick 7,将 convert 更改为 magick)

剩下:

在此处输入图像描述

对:

在此处输入图像描述


推荐阅读