def test_pack_images(): #get a list of PNG files in the current directory names = glob.glob(os.path.join('images', "*.png")) #create a list of PIL Image objects, sorted by size images = [(name, Image.open(name)) for name in names] placements = pack_images(images, padding=2, sort='maxarea', maxdim=2048, dstfilename='out.png') for area, name, im in placements: print("%s %d %d %d %d" % (name, area.x1, area.y1, area.x2, area.y2))
def texture_atlas(self, files): self.tmp_dir = tempfile.mkdtemp() texture_file = os.path.join(self.tmp_dir, self.texture_name)+'.png' images = [(name, Image.open(name)) for name in files] placements = pack_images(images, padding=2, sort='maxarea', maxdim=2048, dstfilename=texture_file) xml_file = os.path.join(self.tmp_dir, self.texture_name)+'.xml' file(xml_file, 'w').write(gen_xml(placements, self.texture_name)) return { 'image': [texture_file], 'xml': [xml_file] }