所以我想把一个图像拼接成两个,我为此编写了这段代码。
from wand.image import Image from wand.display import display with Image(filename="test.png") as im : im.trim(color=None,fuzz=0) x,y = im.size xh,yh = int(x/2),int(y/2) print(x,y,xh,yh) im1 = im[0:xh,0:y] print(im1.size) display(im1)
图像的大小是(1156242),因此拼接图像应该是(578242),但它是(553235)。有人知道为什么吗? Here is the test image.
这就是使用 wand.image.Image.trim .只需要简单的“重新页面”。
wand.image.Image.trim
from wand.image import Image with Image(filename="test.png") as im : im.trim(color=None,fuzz=0) im.reset_coords() # <= Same as `-repage' x,y = im.size xh,yh = int(x/2),int(y/2) print(x,y,xh,yh) im1 = im[0:xh,0:y] print(im1.size) display(im1)
我现在手头没有文档链接,但可以快速搜索ImageMagick的 -repage 命令行选项应有助于描述该过程。
-repage