2011-05-15 82 views
0

我有这个巴纽:裁切图像,并将其保存

terrain

我想裁剪16×16平方,并将其保存为一些名称的另一个巴纽,那么我就需要继续下一个16像素(到右边,然后到下一行),直到我完成整个图像,所以我将总共有256个.png与来自原始图像的各个精灵。

这可能与GD?我在浪费时间吗?有没有其他的方式来做到这一点,而不是像Photoshop一样把它们像个疯子一样单独保存?

谢谢:)

回答

1

此代码会将第一行复制到16个小图像中。

<?php 
set_time_limit(0); 
for($f1=0;$f1<16;$f1++){ 
cropImg(0,16 * $f1,'r0mzR.png','row1'.$f1.'.png'); 
} 

function cropImg($x,$y,$f,$n){ 
$image = imagecreatefrompng($f); 
$crop = imagecreatetruecolor(16,16); 
imagecopy ($crop, $image, 0, 0, $x, $y,16, 16); 
imagepng($crop,$n); 
} 
?> 

要获得第二行只是重复第二循环这样

for($f2=0;$f2<16;$f2++){ 
    cropImg(16,16 * $f2,'r0mzR.png','row2'.$f2.'.png'); 
} 

而且cropImg进行第一个4个参数的x位置,y位置,原来的文件名和输出文件的功能名称。

PS:< 3的Minecraft

+1

真棒0xAli,太感谢你了,钻石给你。 – MauJFernandez 2011-05-15 04:38:52

相关问题