Python 重复填充背景图像
我有一个像这样的小背景图像: 它比我的图像尺寸小,所以我需要反复画。(想想css中的背景重复)Python 重复填充背景图像,python,python-imaging-library,Python,Python Imaging Library,我有一个像这样的小背景图像: 它比我的图像尺寸小,所以我需要反复画。(想想css中的背景重复) 我搜索了很多,但找不到解决方案……非常感谢。根据Marcin链接的代码,这将在较大的背景图像上平铺背景图像: from PIL import Image # Opens an image bg = Image.open("NOAHB.png") # The width and height of the background tile bg_w, bg_h = bg.size # Create
我搜索了很多,但找不到解决方案……非常感谢。根据Marcin链接的代码,这将在较大的背景图像上平铺背景图像:
from PIL import Image
# Opens an image
bg = Image.open("NOAHB.png")
# The width and height of the background tile
bg_w, bg_h = bg.size
# Creates a new empty image, RGB mode, and size 1000 by 1000
new_im = Image.new('RGB', (1000,1000))
# The width and height of the new image
w, h = new_im.size
# Iterate through a grid, to place the background tile
for i in xrange(0, w, bg_w):
for j in xrange(0, h, bg_h):
# Change brightness of the images, just to emphasise they are unique copies
bg = Image.eval(bg, lambda x: x+(i+j)/1000)
#paste the image at location i, j:
new_im.paste(bg, (i, j))
new_im.show()
产生以下结果:
或者删除Image.eval()
行:
看一看。它展示了如何将小图像边缘化为大图像。