资源大湿 发表于 2019-8-5 17:01

批量导出appstore图片-python根据一张图导出不同尺寸的icon及launchImage


要切换到python 3以上版本,这里用的别名 alias python3 可用sudo vi ~/.bashrc 编辑添加
alias python3='/Library/Frameworks/Python.framework/Versions/3.7'

python3 从python网站上下载,用法:python3 脚本路径 要进行裁剪的图片 导出类型(icon或launchImage) 是否竖屏
举例:python3 /Users/yusiyuan/Downloads/exportImg.py /Users/yusiyuan/Downloads/未命名文件夹8/A7CCADE7E97F85687A64C50AEF46DF6F.jpg icon 1
图片路径imgPath:/Users/yusiyuan/Downloads/未命名文件夹8/A7CCADE7E97F85687A64C50AEF46DF6F.jpgfrom PIL importImage
import os
import sys
imgPath=sys.argv
exportType=sys.argv
isVertical=sys.argv
print ("图片路径imgPath:%s"%imgPath)
print ("导出类型:%s"%exportType)
print ("是否竖屏:%s"%isVertical)
#创建icon方法
imageDirectory =imgPath
imageSize =

def createImage(size):
    im = Image.open(imageDirectory)
    im.resize((size,size), Image.ANTIALIAS).save(imageDirectory+"icon%dx%d.png"%(size,size))

def start():
    for size in imageSize:
       createImage(size)
#创建launchImage方法
imageLSizeW=;
imageLSizeH=;

def createImageL(sizeW,sizeH):
    im = Image.open(imageDirectory)
    im.resize((sizeW,sizeH), Image.ANTIALIAS).save(imageDirectory+"icon%dx%d.png"%(sizeW,sizeH))
def startLaunch():
      for index in range(len(imageLSizeW)):
                if isVertical=="1":
                            createImageL(imageLSizeW,imageLSizeH)
                elif isVertical=="0":
                        createImageL(imageLSizeH,imageLSizeW)
                else:
                            createImageL(imageLSizeW,imageLSizeH)

if __name__ == "__main__":
      if exportType == "icon":
                  start()
      elif exportType == "launchImage":
                startLaunch()

资源大湿 发表于 2019-10-8 14:31

from PIL importImage
import os
import sys
imgPath=sys.argv
exportType=sys.argv
isVertical=sys.argv
print ("图片路径imgPath:%s"%imgPath)
print ("导出类型:%s"%exportType)
print ("是否竖屏:%s"%isVertical)
#创建icon方法
imageDirectory =imgPath
imageSize =

def createImage(size):
        im = Image.open(imageDirectory)
        index = imageDirectory.rfind('/')
        newPath=imageDirectory
        newPath=newPath+"/"+"icon_%dx%d.png"%(size,size)
        print("导出成功,路径为:%s"%newPath)
        im.resize((size,size), Image.ANTIALIAS).save(newPath)

def start():
        for size in imageSize:
                createImage(size)
#创建launchImage方法
imageLSizeW=;
imageLSizeH=;

def createImageL(sizeW,sizeH,oneImagePath,indexL):
        im = Image.open(oneImagePath)
        index = oneImagePath.rfind('/')
        newPath=oneImagePath
        newPath=newPath+"/"+str(indexL)+"_launchImage_%dx%d"%(sizeW,sizeH)+".png"
        print("导出成功,路径为:%s"%newPath)
        im.resize((sizeW,sizeH), Image.ANTIALIAS).save(newPath)
def startLaunch(oneImagePath,indexL):
        for index in range(len(imageLSizeW)):
                if isVertical=="1":
                        createImageL(imageLSizeW,imageLSizeH,oneImagePath,indexL)
                elif isVertical=="0":
                        createImageL(imageLSizeH,imageLSizeW,oneImagePath,indexL)
                else:
                        createImageL(imageLSizeW,imageLSizeH,oneImagePath,indexL)

if __name__ == "__main__":
        if exportType == "icon":
                        start()
        elif exportType == "launchImage":
                arrImagePath=imgPath.split("+")
                for indexL in range(len(arrImagePath)):
                        tmp=arrImagePath
                        startLaunch(tmp,indexL)

资源大湿 发表于 2019-10-8 14:32

资源大湿 发表于 2019-10-8 14:31 static/image/common/back.gif


更新了一版带加号 批量导出的
使用示例: python3 /Users/yusiyuan/Desktop/SlotsProject/python/exportImg.py /Users/yusiyuan/ConnectNumber/image/7E4C52A3A08E3EE9B131ED7F28D349F4.JPG+/Users/yusiyuan/ConnectNumber/image/4788FD2A3C21992BCDABE68332F3F2ED.JPG+/Users/yusiyuan/ConnectNumber/image/C6A91B713477E2D9966A2DDFD7389632.JPG+/Users/yusiyuan/ConnectNumber/image/F5DA50F28F29712106924103C482C1AE.JPG launchImage 1
页: [1]
查看完整版本: 批量导出appstore图片-python根据一张图导出不同尺寸的icon及launchImage