from PIL import Image import os, sys, shutil img = Image.open(sys.argv[1]) if img.size != (1024,1024): print "Input image must be 1024x1024. Provided image is %dx%d" % img.size os.mkdir("vcmi.iconset") for i in [16, 32, 128, 256, 512]: resized = img.resize((i, i), Image.ANTIALIAS) resized.save("vcmi.iconset/icon_%dx%d.png" % (i, i)) resized2x = img.resize((2*i, 2*i), Image.ANTIALIAS) resized2x.save("vcmi.iconset/icon_%dx%d@2x.png" % (i, i)) os.system("iconutil -c icns vcmi.iconset") shutil.rmtree("vcmi.iconset")