2015-03-03 35 views
3

我想编写的魔杖等同的ImageMagick的“转换-append”

convert left.jpg right.jpg +append ouput.jpg 

我发现在另一篇类似的东西相当于:

files = glob('*.jpg') 
with Image() as orig: # create empty Image object 
    for f in files: 
     page = Image(filename=f) 
     orig.sequence.append(page) 
    orig.save(filename='result.pdf') 

,并把它改成

with Image() as orig: # create empty Image object 
      page = Image(filename='left.jpg'); orig.sequence.append(page) 
      page = Image(filename='right.jpg'); orig.sequence.append(page) 
      orig.save(filename='output.jpg') 

但输出文件只是显示第一个文件,而不是与图像并排的文件。

回答

5

我的第一次尝试是完全错误的,它可能会生成一个动画图像。假设这两幅图像尺寸相同,则可以这样做:

with Image() as blankimage: 
    with Image(filename = 'imageA.tif') as imageA: 
     w = imageA.width; h = imageA.height 
     with Image(filename = 'imageB.tif') as imageB: 
      blankimage.blank(w*2, h) 
      blankimage.composite(imageA, 0, 0) 
      blankimage.composite(imageB, w, 0) 
      blankimage.save(filename = 'output.tif')