【发布时间】:2010-06-05 23:17:17
【问题描述】:
我正在寻找一种方法,我可以说,一个 200x200 像素的图像,并将其置于 500x500 像素的背景上。背景应该是 200x200 像素图像左上角的颜色。
我得到了 -gravity 和 -fill 标志,但我无法找到一种方法来获取左上角的颜色以传递给 -fill 标志。
【问题讨论】:
标签: imagemagick
我正在寻找一种方法,我可以说,一个 200x200 像素的图像,并将其置于 500x500 像素的背景上。背景应该是 200x200 像素图像左上角的颜色。
我得到了 -gravity 和 -fill 标志,但我无法找到一种方法来获取左上角的颜色以传递给 -fill 标志。
【问题讨论】:
标签: imagemagick
我还没有找到更简单的方法,所以我正在裁剪角落,调整它的大小以生成纯色图像,然后合成它们。通过使用 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
【讨论】:
嗯,我以为我是用 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))
【讨论】: