python生成@2x,@3x圖片小指令碼

weixin_34138377發表於2015-12-21

Slicy能夠從PSD檔案中根據圖層命名來生成切圖,確實是一個很好的切圖神器。但是Slicy只能生成.png和@2x.png的圖片,無法生成@3x.png的圖片,所以要通過寫一個小指令碼來進行轉換。

指令碼的原理很簡單,就是將原來的.png的字尾改為@2x.png,原來@2x.png的字尾改成@3x.png,並將改名後的檔案放到一個新的資料夾中。

使用也很簡單,將指令碼檔案rename.py放到圖片資料夾中,執行控制檯命令python rename.py即可將當前資料夾下所有.png檔案改名為@2x.png檔案,將@2x.png檔案改名為@3x.png檔案,並統一複製到一個新的目錄icons中。

# rename.py
__author__ = 'zhijieli'

# change files type from .png and @2x.png to @2x.png and @3x.png
import sys
import os
import shutil

path = sys.path[0]
fileGroupName = 'icons'

def renameFile(file,theSplit,theNew,theNewGroup):
    namesSplitArr = file.split(theSplit)
    newName = namesSplitArr[0] + theNew
    shutil.copyfile(file,theNewGroup + "/" + newName)

if os.path.exists(fileGroupName) == False:
    os.mkdir(fileGroupName)

files = os.listdir(path)

for file in files:
    if file.find('@2x.png') > 0:
        renameFile(file,'@2x.png','@3x.png',fileGroupName)

    elif file.find('.png') > 0:
        renameFile(file,'.png','@2x.png',fileGroupName)

print("Rename Finished!")

相關文章