2010-06-05 57 views
1

我正在寻找一种方式,我可以说,一个200x200像素的图像并将其居中放置在500x500像素的背景上。背景应该是200x200像素图像左上角的颜色。从角落拍摄的背景颜色的中心图像

我得到了-gravity和-fill标志,但我很难找到一种方法来获取左上角的颜色以传递给-fill标志。

回答

2

我还没有找到一个更简单的方法,所以我裁剪的拐角处,调整其大小导致了坚实的彩色图像,然后合成它们。通过使用STDIN和STDOUT文件描述符使之成为可能。 “png: - ”位告诉imagemagick以我所了解的PNG格式传递图像数据。

convert -crop 1x1+0+0 image.png png:- | convert -resize 500x500 - png:- | convert -gravity center -composite - image.png new_image.png 
1

嗯我以为我用Image Magick做了这个,但事实证明我使用了PIL。如果你正在使用Python,您可以使用PIL得到那个角落像素的颜色,像这样:

import Image 

img = Image.open(filename) 

if img.mode != "RGB": 
    img = img.convert("RGB") 

left_corner = img.getpixel((0,0))