任何人都可以提供在django中合并两个图像的代码[关闭]
Posted
技术标签:
【中文标题】任何人都可以提供在django中合并两个图像的代码[关闭]【英文标题】:Can any one provide the code for merging two images in django [closed] 【发布时间】:2016-07-27 19:07:09 【问题描述】:我尝试在 django 中合并两个图像。但是我不成功,谁能给我提供合并两个图像的代码,这样,一个图像应该放在另一个图像上并保存为.jpg。我的邮件 ID 是 srikanthmadireddy78@gamil.com
【问题讨论】:
我希望您使用的是像枕头这样的成像库?另外,将您的电子邮件保密?? 你尝试了什么?发布您不成功的代码,以便您得到帮助。 请告诉我们您到目前为止尝试过什么,只有我们可以提供帮助,我们如何在不知道您尝试过什么的情况下帮助您解决您使用的版本遇到的问题。 【参考方案1】:您可以使用Python Imaging Library。
from PIL import Image
def merge_img(background, foreground):
#Conver both images to same color mode
if background.mode != 'RGBA':
background = background.convert('RGBA')
if foreground.mode != 'RGBA':
foreground = foreground.convert('RGBA')
layer = Image.new('RGBA', background.size, (0,0,0,0))
#Scale images
ratio = min(float(background.size[0]) / foreground.size[0], float(background.size[1]) / foreground.size[1])
w = int(foreground.size[0] * ratio)
h = int(foreground.size[1] * ratio)
foreground = foreground.resize((w, h))
#Paste foreground at the middle of background
layer.paste(foreground, ((background.size[0] - w) // 2, (background.size[1] - h) // 2))
return Image.composite(layer, background, layer)
background = Image.open('background.jpg')
foreground = Image.open('foreground.jpg')
img = merge_img(background, foreground)
img.save('merged.jpg')
不一定要用layer
和Image.composite()
,只能和paste()
相处,但他们会帮助解决很多问题。特别是如果需要将 gif 与 jpeg 合并。
【讨论】:
如果你添加一些关于 PIL 的信息(它是什么?,在哪里可以找到它?)和代码,你可能会得到更多的支持。 @Matthias 完成。我希望它变得更好。以上是关于任何人都可以提供在django中合并两个图像的代码[关闭]的主要内容,如果未能解决你的问题,请参考以下文章