还原TexturePacker plist 文件以及图片的方法 (切开各小图片)

Plist图集批量拆解工具大全 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录前言一、为什么需要图集打包?二、使用python批量拆解plist格式文件1.引入库2.具体实现代码三、使用python批量拆解laya引擎图集文件四、使用python批量拆解Egret引擎图集文件附Gitee传送地址Creator拆图工具总结 前言 因为学习需要制作游戏,经常会在网上寻找一些资源进行学习,而一般资源分积分下载源资源或者线上扒取别人的图集资源。所以很多时候需要对一张合集图进行拆分,今天主要讲解有描述文件的图集拆分。 阅读详情

Python 脚本:(来自网络)

unpack_plist.py

命令行: python unpack_plist.py  plist文件名称 

例子: python unpack_plist.py  common      ## plist文件全名为 common.plist

#!python
import os,sys
from xml.etree import ElementTree
from PIL import Image

def tree_to_dict(tree):
    d = {}
    for index, item in enumerate(tree):
        if item.tag == 'key':
            if tree[index+1].tag == 'string':
                d[item.text] = tree[index + 1].text
            elif tree[index + 1].tag == 'true':
                d[item.text] = True
            elif tree[index + 1].tag == 'false':
                d[item.text] = False
            elif tree[index+1].tag == 'dict':
                d[item.text] = tree_to_dict(tree[index+1])
    return d

def gen_png_from_plist(plist_filename, png_filename):
    file_path = plist_filename.replace('.plist', '')
    big_image = Image.open(png_filename)
    root = ElementTree.fromstring(open(plist_filename, 'r').read())
    plist_dict = tree_to_dict(root[0])
    to_list = lambda x: x.replace('{','').replace('}','').split(',')
    for k,v in plist_dict['frames'].items():
        rectlist = to_list(v['frame'])
        width = int( rectlist[3] if v['rotated'] else rectlist[2] )
        height = int( rectlist[2] if v['rotated'] else rectlist[3] )
        box=( 
            int(rectlist[0]),
            int(rectlist[1]),
            int(rectlist[0]) + width,
            int(rectlist[1]) + height,
            )
        sizelist = [ int(x) for x in to_list(v['sourceSize'])]
        rect_on_big = big_image.crop(box)

        if v['rotated']:
            rect_on_big = rect_on_big.rotate(90)

        result_image = Image.new('RGBA', sizelist, (0,0,0,0))
        if v['rotated']:
            result_box=(
                ( sizelist[0] - height )/2,
                ( sizelist[1] - width )/2,
                ( sizelist[0] + height )/2,
                ( sizelist[1] + width )/2
                )
        else:
            result_box=(
                ( sizelist[0] - width )/2,
                ( sizelist[1] - height )/2,
                ( sizelist[0] + width )/2,
                ( sizelist[1] + height )/2
                )
        result_image.paste(rect_on_big, result_box, mask=0)

        if not os.path.isdir(file_path):
            os.mkdir(file_path)
        outfile = (file_path+'/' + k).replace('gift_', '')
        print outfile, "generated"
        result_image.save(outfile)

if __name__ == '__main__':
    filename = sys.argv[1]
    plist_filename = filename + '.plist'
    png_filename = filename + '.png'
    if (os.path.exists(plist_filename) and os.path.exists(png_filename)):
        gen_png_from_plist( plist_filename, png_filename )
    else:
        print "make sure you have boith plist and png files in the same directory"

windows7 下相关python配置:

1. 安装python2.7.3

2. 在此处下载 安装 (这是最简洁的方式,已经编译好png,zip等处理) 

  http://www.lfd.uci.edu/~gohlke/pythonlibs/#pil






TexturePacker图集 plist拆分工具 plist拆分工具,开发游戏的时候,遇到素材的问题,所以用了次软件可以拆分图片, 立即下载

相关推荐

plist文件还原为多个原图-工具.zip

使用split.py脚本 - 将Texture Packer制作的.pvr.ccz和.plist文件还原为多个原图

【python】plist图集拆分

使用cocos creator的可以到官方商店找对应的插件 使用cocos studio就简单一些,直接新建工程导入plist文件 使用python的PIL图片处理模块来拆分

sirria1的专栏 3254

plist拆图工具将大图图集分解单张小图

大图集plist文件拆解成单张小图,拿到里面单张小图资源,方便好用,推荐给大家,不足一起改正。

利用Python还原TexturePacker或者cocos studio创建好的pList图集,考虑旋转和裁切造成的偏移

1111

孙君的空间站 1876

拆分cocos plist,白鹭 json,spine atlas图集

将cocos plist,白鹭 json,spine atlas图集拆成碎图。将工具放要拆分的图集的根目录运行即可。

tool-TextureUnpacker:将TexturePacker打包的纹理大图(plist+图片)还原为每一张小图(this script use to unpack png files in the plist file packed by TexturePacker)

TextureUnpacker 将TexturePacker打包的纹理大图(plist+图片)还原为每一张小图 剔除加密后生成的无效的片 剔除加密后出现的重复图片 重对小图命名排序 #说明 使用cocos2d-x引擎实现 proj目录下为项目文件 win32.exe目录下为编译好的可执行文件(win7) #如何使用 首先新建一个cocos2d-x工程(使用的3.x版本) 将2dx_file目录下的文件用于替换原cocos2dx引擎的文件(SpriteFrameCache只是多加了一个函数SpriteFrameCache::getSpriteframes()) 替换Classes 和 Resource 编译运行即可

将TexturePacker制作的.pvr.ccz和.plist文件还原为多个原图

第一步,将".pvr.ccz"文件改为“.png”格式 pvr转png.batrem path " "里面内容替换为TexturePacker的安装路径,将bat文件放在图片文件夹直接运行就可以了 @ech off path %path%;"D:\Program Files (x86)\CodeAndWeb\TexturePacker\bin" for /f "usebackq tokens

huang_0430的博客 3419

TexturePacker分图工具,切图plist

TexturePacker分图工具,将大图切成小图,强大的工具,切图方便

[工具] Plist+PNG 解包工具 UnpackPlist(TextureUnPacker) ,批量图片切割工具,批量大图分小图

UnpackPlist是一款专业的TexturePacker图集解包工具,可将.plist+.png或.json+.png格式的图集文件还原为独立精灵图片。支持TexturePacker的Format2/3格式,能自动处理旋转精灵、偏移还原和透明通道保持。核心功能包括双格式自动识别、像素级精度的纹理裁剪、Alpha通道完美保持,并提供单文件/批量处理模式及文件拖拽支持。最新v1.1.0版本新增JSON格式支持和footOffset字段解析,适用于游戏开发、美术素材还原、逆向工程等多种场景。

2603_95502240的博客 770

texturepacker打包的大图集切割成小图片

texturepacker打包的大图集切割成小图片.能读取json文件,切割小图片。选择软件选项中,最后的open json选项读取.

CentOS 环境 sngrep 安装及使用

在呼叫中心类应用开发过程中,经常需要对 SIP 信令抓包,分析排查问题。通常抓包的工具非常多样,如 Wireshark、tcpdump、ngrep 等都是可选项,但是针对 SIP 信令的抓包,sngrep 则更为好用。因为 sngrep 不仅提供了图形界面,还会将一通会话的 SIP 信令关联汇总,非常直观执行以下命令下载 的相关依赖库 1.2 添加 sngrep 的源并导入 执行下面的命令新增一个源仓库配置文件 然后在该文件中写入以下配置内容 执行命令导入源仓库的公钥 1.3 安装 sngrep

谈谈1974 8144
上一篇: BOM utf-8 的去掉BOM的方法
下一篇: cubietruck 需要注意的地方!!!
linuxchen
博客等级 码龄24年 34粉丝 96原创
评论 13
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值