Python 图像切片器无法通过第一个切片-枕头
所以,我正在进行我的第一个非游戏项目,我的目标是创建一个基本的图像切片器。我的想法是,我想拍摄一张图像,接收用户输入的切片大小,然后将图像分解成正确数量的切片。我的代码当前正在创建正确数量的切片,第一个切片看起来是正确的,但其余的切片都是空白图像或完整的alpha图像 这是我的密码:Python 图像切片器无法通过第一个切片-枕头,python,image,split,python-imaging-library,slice,Python,Image,Split,Python Imaging Library,Slice,所以,我正在进行我的第一个非游戏项目,我的目标是创建一个基本的图像切片器。我的想法是,我想拍摄一张图像,接收用户输入的切片大小,然后将图像分解成正确数量的切片。我的代码当前正在创建正确数量的切片,第一个切片看起来是正确的,但其余的切片都是空白图像或完整的alpha图像 这是我的密码: import sys from PIL import Image, ImageDraw im = Image.open("48x48.png") print('Enter your de
import sys
from PIL import Image, ImageDraw
im = Image.open("48x48.png")
print('Enter your desired tile size in pixels (Example: 16 will be a 16x16 tile):')
tilesize = input()
tilesize = int(tilesize)
rows = im.size[0] / tilesize
cols = im.size[1] / tilesize
ir = 0
ic = 0
while ir != rows:
while ic != cols:
box = (0 + ic * tilesize, 0 + ir * tilesize, tilesize + ic * tilesize, tilesize + ir * tilesize)
region = im.crop(box)
slice = Image.new('RGBA', (tilesize, tilesize), color=255)
mask=Image.new('L', slice.size, color=255)
draw=ImageDraw.Draw(mask)
draw.rectangle((0,0,tilesize,tilesize), fill=0)
slice.putalpha(mask)
slice.paste(region, box)
outfile = "r" + str(ir+1) + "c" + str(ic+1) + ".png"
slice.save(outfile)
ic += 1
ir +=1
ic = 0
顺便说一句,我用枕头库来做这个。谁能帮我找出我做错了什么?谢谢 在另一个论坛上得到了一些帮助。我必须用slice.paste(区域,(0,0))替换slice.paste(区域,框)。成功