概述
最近沉迷于 Pokemon Quest
,目前可供收集的 Pokemon
一共 151 个,从网上找了个全图,想撸一个 App 自己玩。不巧的是这个全图是一张 PNG 格式的图片,包含了所有的 Pokemon
图像,为了方便起见,需要把这 151 个 Pokemon
图像切割出来,构成 151 个单独的图片文件。
思路
起初尝试了在线的分割工具,结果不理想,不是数量不对就是格式有问题。还是自己撸起袖子,Python
走起吧。
这个 全图 比较简单,大小是 64 × 9664
的,而每一张 Pokemon
图片的大小是 64 x 64
的,因此一共是 9664 / 64 = 151
个。代码实现思路也很简单,读入全图,循环设置裁剪区域大小并写入一个单独文件即可。
代码实现
#! /usr/bin/python
# -*-coding:utf-8-*-
from PIL import Image
im = Image.open("pm.png")
img_size = im.size
print("图片宽度和高度分别是{}".format(img_size))
w = img_size[0]
h = 64
x = 0
y = 0
for i in range(1, 152):
y = (i-1) * h
region = im.crop((x, y, x+w, y+h))
name = str(i) + ".png"
region.save(name)
print("fine")
图片下载
参考资料
分类:Development