在给Android游戏或app打包时,经常会遇到有几十上百个渠道的问题。不同的渠道app的名字不一样,icon也可能不一样。程序员总是懒的,最烦手动去改来改去。因此用Python写了一个自动裁剪不同尺寸的icon,并保存到Android对应的icon目录下的脚本。

    这里贴下代码,留个脚印。日后直接拷贝使用。(记得安装下pillow第三方库。pip install pillow)

#!/usr/bin/python# -*- coding:utf-8 -*-# 此脚本功能:根据一张大的icon自动生成不同尺寸的icon,并保存到对应目录下import osfrom PIL import Image# 原始icon文件名,必须与脚本同目录下ORIGIN_ICON_PATH = "icon.png"# 输出icon的目录和icon文件名OUTPUT_ICON_PATH = "proj.android/res/drawable-"OUTPUT_ICON_NAME = "icon"ICON_SIZE_DICT = {"ldpi": (36, 36), "mdpi": (48, 48), "hdpi": (72, 72), "xhdpi": (96, 96), "xxhdpi": (114, 114)}def make_more_images():    if not os.path.isfile(ORIGIN_ICON_PATH) and not os.path.exists(ORIGIN_ICON_PATH):        print ORIGIN_ICON_PATH + " is NOT exist."        return    im = Image.open(ORIGIN_ICON_PATH)    print "origin size: " + im.size.__str__()    if im.size[0] != im.size[1]:        print "width and height MUST be same."        return    if im.size[0] < ICON_SIZE_DICT.get("xxhdpi")[0]:        print "image size is TOO small."        return    for dpi, size in ICON_SIZE_DICT.items():        path = OUTPUT_ICON_PATH + dpi        if not os.path.isdir(path):            print "make [" + dpi + ": " + size.__str__() + "] fail. why: "\                  + os.path.basename(path) + " is invalid folder."            continue        path = path + "/" + OUTPUT_ICON_NAME + ".png"        if os.path.isfile(path) and os.path.exists(path):            os.remove(path)        im.resize(size).save(path, "PNG")        print "make [" + dpi + ": " + size.__str__() + "] success."if __name__ == "__main__":    print '======MAKE ICON START======'    make_more_images()    print '=======MAKE ICON END======='    os.system("pause")

 

更多相关文章

  1. [Android] 利用 ant 脚本修改项目包名
  2. Android可绘制对象资源之shape和layer-list使用
  3. Android自动测试之通过命令行启动应用程序
  4. 【Android(安卓)NDK 开发】Android.mk 配置动态库 ( Android(安
  5. Android手机适配,手机尺寸、px、dpi、dp、sp详解
  6. Android+OTA+升级之一:编译升级包---make+otapackage
  7. Unity项目之AndroidStudio打jar包
  8. 批处理脚本实现android应用程序自动化测试
  9. Android开发笔记:图标尺寸的约定

随机推荐

  1. Android多分辨率适配框架(3)— 使用指南
  2. android设置背景色为透明
  3. Android(安卓)Linux 内核介绍 (转)
  4. Android的selector,背景选择器
  5. Android应用程序的构造块分析
  6. Android之NDK开发
  7. 【转】Android(安卓)技术-- 图形系统详解
  8. (4.1.23)Android(安卓)Animation学习笔记
  9. Android节拍器&定时程序
  10. android中九宫图整齐排列(图片处理)