gpt4 book ai didi

ruby - 使用 RMagick 合成处理过的图像

转载 作者:太空宇宙 更新时间:2023-11-03 16:25:27 28 4
gpt4 key购买 nike

我正在尝试从两个原始图像创建一个合成图像,一个背景和一个叠加层,我使用 RMagick 进行操作,如下所示:

background = ImageList.new("foo.png")
overlay_original = ImageList.new("bar.png")
overlay_resized = overlay_original.resize_to_fit(400,400)
overlay_cropped = overlay_resized.crop(NorthWestGravity, 400, 200)

new_image = ImageList.new
new_image = new_image.composite_layers(background)
new_image = new_image.composite_layers(overlay_cropped)

当我这样做时,出现以下错误:ArgumentError: no images in this image list

当我试图检查 backgroundoverlay_cropped 图像列表的长度时(background.lengthoverlay_cropped.length ) 它告诉我 background 图片列表有 1 张图片,但是 overlay_cropped 没有图片:

NoMethodError: bar.png PNG 640x1096=>400x200 400x400+0+0 DirectClass 8-bit:Magick::Image 的未定义方法长度

关于我做错了什么的任何想法?我猜答案很明显。

最佳答案

通过将其更改为以下内容解决了问题:

marketing_image = marketing_image.composite(background, NorthWestGravity, 0, 0, OverCompositeOp)
marketing_image = marketing_image.composite(overlay_cropped, NorthWestGravity, 327, 126, OverCompositeOp)

关于ruby - 使用 RMagick 合成处理过的图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25584020/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com