在从角落采取的背景颜色的中心图象

时间:2010-06-05 23:17:18

标签: imagemagick

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

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

2 个答案:

答案 0 :(得分: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 :(得分: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))