plist 图集 php 批量提取 PS 一个个切
2024-09-04 00:42:10
最近,迷上了用 cocos2d 做游戏开发。由于是新入门,很多东西从头开始学。
在使用 sprite 的 Rect 裁剪显示的时候,显示总是多一块。所以,要从图集中提取一张张图,这样就省了裁剪。
原图是这样的,一大张 png 图集,花钱买的素材,可是并没有提供 plist 文件。
如果,只有几张,就ps 手切了,现在有点多,还要画很多条参考线。
先在网上搜了几下,没有发现适用的软件,只得自己做一个了,python , java, c#, php 都可以做,考虑到还要配置各种环境,
所以还是用最拿手的 php 来搞,源码如下:
<?php
//author: nejidev
//date: 2019-10-05 21:29
$src_png = imagecreatefrompng('card.png'); $width = 100;
$height = 134;
$top = 0;
$left = 0; for($i=0; $i<5; $i++)
{
$left = 0;
for($j=0; $j<13; $j++)
{
$new_png = imagecreate($width, $height);
imagecopy($new_png, $src_png, 0, 0, $left, $top, $width, $height);
imagepng($new_png, "$i-$j.png");
imagedestroy($new_png);
$left += $width;
}
$top += $height;
//top 微调
if(0 == $i) $top += -1;
if(1 == $i) $top += -1;
if(2 == $i) $top += 0;
if(3 == $i) $top += -1;
}
imagedestroy($src_png);
PHP 果然没让失望,几下代码就搞定了,其实核心只有一行 imagecopy() ,要是 java 估计多几倍,python 以前也用过,需要装第三方库。
折分小图后:
最新文章
- HIVE 时间操作函数
- [转载] 已知strcpy的函数原型:char *strcpy(char *strDest, const char *strSrc),编写函数 strcpy(C++版)
- CoreProfiler/NanoProfiler
- 第11章 集合、比较和转换(C#入门经典第6版)
- isinstance 和 issubclass
- ACM—循环小数转变成分数知识点_C++实现
- c++内存泄漏处理(积累)
- 复杂和遗留的数据库schema
- python 生成 pptx 分析报告的工具包:reportgen
- 整理SpringMVC
- Gradle入门与使用
- RHCSA
- [luogu4556][Vani有约会]
- Context连接和断开的情况下的CRUD操作
- tf实现LSTM时rnn.DropoutWrapper
- Android集成人脸识别demo分享
- Spring 系列教程之 bean 的加载
- 无线端安全登录与鉴权一之Kerberos
- Hibernate的多对多实例
- fuzz系列之libfuzzer
热门文章
- 学习python-20191208(1)-Python Flask高级编程开发鱼书_第03章_数据与flask路由
- MyBatis注解及动态Sql
- dtree加载菜单基本使用方法
- oracle存储过程随笔
- http、https的压测工具——apacheab 、webbench
- dos窗口运行python文件提示找不到模块
- unittest(22)- p2p项目实战(4)-read_config
- npm(classnames) 更灵活使用类名
- 算法笔记-Day_01(1001 害死人不偿命的(3n+1)猜想
- Selenium的Web自动化测试(送源码)