• plist 图集 php 批量提取 PS 一个个切


    最近,迷上了用 cocos2d 做游戏开发。由于是新入门,很多东西从头开始学。

    在使用 sprite 的 Rect 裁剪显示的时候,显示总是多一块。所以,要从图集中提取一张张图,这样就省了裁剪。

    原图是这样的,一大张 png 图集,花钱买的素材,可是并没有提供 plist 文件。

    如果,只有几张,就ps 手切了,现在有点多,还要画很多条参考线。

    先在网上搜了几下,没有发现适用的软件,只得自己做一个了,python , java, c#, php 都可以做,考虑到还要配置各种环境,

    所以还是用最拿手的 php 来搞,源码如下:

     1 <?php
     2 //author: nejidev
     3 //date: 2019-10-05 21:29
     4 $src_png = imagecreatefrompng('card.png');
     5 
     6 $width   = 100;
     7 $height  = 134;
     8 $top     = 0;
     9 $left    = 0;
    10 
    11 for($i=0; $i<5; $i++)
    12 {
    13     $left = 0;
    14     for($j=0; $j<13; $j++)
    15     {
    16         $new_png = imagecreate($width, $height);
    17         imagecopy($new_png, $src_png, 0, 0, $left, $top, $width, $height);
    18         imagepng($new_png, "$i-$j.png");
    19         imagedestroy($new_png);
    20         $left += $width;
    21     }
    22     $top += $height;
    23     //top 微调
    24     if(0 == $i) $top += -1;
    25     if(1 == $i) $top += -1;
    26     if(2 == $i) $top += 0;
    27     if(3 == $i) $top += -1;
    28 }
    29 imagedestroy($src_png);

    PHP 果然没让失望,几下代码就搞定了,其实核心只有一行 imagecopy() ,要是 java 估计多几倍,python 以前也用过,需要装第三方库。

    折分小图后:

  • 相关阅读:
    poj 1611 The Suspects
    POJ 2236 Wireless Network
    POJ 1703 Find them, Catch them
    poj 1733 Parity game
    hdu 1598 find the most comfortable road
    cmake的使用二:链接第三方静态库
    线段树基础
    迪杰斯特拉算法
    Floyd详解
    STL中的set使用方法详细
  • 原文地址:https://www.cnblogs.com/ningci/p/11625848.html
Copyright © 2020-2023  润新知